Css 如何将此设置为中心<;导航>;没有宽度的元素导航栏

Css 如何将此设置为中心<;导航>;没有宽度的元素导航栏,css,navigation,Css,Navigation,我对水平导航条的居中有一些问题。这是我的JSFIDLE: 我在寻找两件事: 1.如何在不放置指定宽度的情况下水平居中导航栏? 2.如何进一步在“ul”中添加更多的“li”,以便自动压缩所有的“li”,为导航栏中新添加的“li”腾出空间 我把一切都说清楚了吗?问我你是否需要更多信息。提前谢谢大家 这是我的密码: <Doctype! html> <html> <head> <title> horizontal dropdown menu </

我对水平导航条的居中有一些问题。这是我的JSFIDLE: 我在寻找两件事: 1.如何在不放置指定宽度的情况下水平居中导航栏? 2.如何进一步在“ul”中添加更多的“li”,以便自动压缩所有的“li”,为导航栏中新添加的“li”腾出空间

我把一切都说清楚了吗?问我你是否需要更多信息。提前谢谢大家

这是我的密码:

<Doctype! html>

<html>

<head>
<title> horizontal dropdown menu </title>

<style type="text/css" media="screen">

    a{
        font-family: "verdana", sans-serif;
        font-weight: bold;
    }
    nav ul{
        list-style: none;
        position: relative;
        background: #efefef;
        background: linear-gradient (top,#efefef,#bbbbbb);
        background: moz-linear-gradient (top, #efefef,#bbbbbb);
        background: webkit-linear-gradient (top,#efefef,#bbbbbb);
        box-shadow: 0px 0px 5px rgba(0,0,0,0.5);
        padding: 0 20px;
        border-radius: 10px;
        display: inline-table;
    }
    nav ul li{
        display: inline-block;
        border-right: 1px solid #fff;
    }
    nav ul li:hover{
        background: #5b545f;
        background: linear-gradient(top, #4f5964 0%, #5f6975 40%);
        background: -moz-linear-gradient(top, #4f5964 0%, #5f6975 40%);
        background: -webkit-linear-gradient(top, #4f5964 0%,#5f6975 40%);
    }
    nav ul li a{
        text-decoration: none;
        color: #000;
        padding: 20px 20px;
        display: block;
    }
    nav ul li:hover a{
        color: #ffffff;
    }
    nav ul ul{
        background: #5f6975;
        border-radius: 0; padding: 0;
        position: absolute; top: 100%;
        display: none;
    }
    nav ul li:hover > ul{
        display: block;
    }
    nav ul ul li{
        display: block;
        border-top: 1px solid #6b727c;
        border-bottom: 1px solid #575f6a;
        border-right: 0;
        position: relative;
    }
    nav ul ul li a{
        padding: 10px 40px;
    }
    nav ul ul li a:hover{
        background: #4b545f;
    }
    nav ul ul ul{
        position: absolute; left: 100%; top: 0;
    }

</style>
</head>

<body>
    <nav>
        <ul>
            <li><a href="#"> Home </a></li>
            <li><a href="#"> Works &#8595 </a>
                <ul>
                    <li><a href="#"> Photoshop </a></li>
                    <li><a href="#"> Illustrator  </a></li>
                    <li><a href="#"> Web Design &#8594 </a>
                        <ul>
                            <li><a href="#"> HTML </a></li>
                            <li><a href="#"> CSS </a></li>
                        </ul>
                    </li>
                </ul>
            </li>
            <li><a href="#"> Downloads &#8595 </a>
                <ul>
                    <li><a href="#"> Softwares </a></li>
                    <li><a href="#"> Ebooks </a></li>
                </ul>
            </li>
            <li><a href="#"> About Us </a></li>
            <li><a href="#"> Contact </a></li>
        </ul>
    </nav>
</body>

</html>

水平下拉菜单
a{
字体系列:“verdana”,无衬线;
字体大小:粗体;
}
导航ul{
列表样式:无;
位置:相对位置;
背景:#efef;
背景:线性梯度(顶部,#efefef,#bbbbbb);
背景:moz线性梯度(顶部,#efefef,#bbbbbb);
背景:webkit线性梯度(顶部,#efefef,#bbbbbb);
盒影:0px 0px 5px rgba(0,0,0,0.5);
填充:0 20px;
边界半径:10px;
显示:内联表;
}
李国荣{
显示:内联块;
右边框:1px实心#fff;
}
nav ul li:悬停{
背景#5b545f;
背景:线性梯度(顶部,#4f5964 0%,#5f6975 40%);
背景:-moz线性梯度(顶部,#4f5964 0%,#5f6975 40%);
背景:-webkit线性梯度(顶部,#4f5964 0%,#5f6975 40%);
}
海军ulli a{
文字装饰:无;
颜色:#000;
填充:20px 20px;
显示:块;
}
nav ul li:悬停a{
颜色:#ffffff;
}
导航ul{
背景#5f6975;
边框半径:0;填充:0;
位置:绝对;顶部:100%;
显示:无;
}
导航ul li:悬停>ul{
显示:块;
}
李国宝{
显示:块;
边框顶部:1px实心#6b727c;
边框底部:1px实心#575f6a;
右边界:0;
位置:相对位置;
}
海军ulli a{
填充:10px 40px;
}
导航ulli a:悬停{
背景:#4b545f;
}
导航ul{
位置:绝对;左侧:100%;顶部:0;
}
您不能只使用:

nav { text-align: center }
在CSS中,您不能只使用:

nav { text-align: center }
在CSS中,您可以使用

 nav { text-align: center }
你可以用

 nav { text-align: center }

嗯,你可以用表格代替列表。如果您使用的是列表,则“给定宽度”不会按照您的意愿设置添加的列表项


1和2.使用表格可以避免在不指定特定宽度的情况下使其居中。为表格指定宽度,即使在表格中添加额外元素,也不会出现问题。它将在给定宽度内自动调整,而不会干扰布局

嗯,你可以用表格代替列表。如果您使用的是列表,则“给定宽度”不会按照您的意愿设置添加的列表项


1和2.使用表格可以避免在不指定特定宽度的情况下使其居中。为表格指定宽度,即使在表格中添加额外元素,也不会出现问题。它将在给定宽度内自动调整,而不会干扰布局

只需在样式表中包含这行代码即可

nav { 
  text-align: center 
}

只需在样式表中包含这行代码

nav { 
  text-align: center 
}
应用此样式:

nav{
  margin: 0 auto;
  display: table;
}
应用此样式:

nav{
  margin: 0 auto;
  display: table;
}

文本对齐:居中将为您带来神奇的效果。

文本对齐:居中将为您带来奇迹。

以下是css

*{
list-style: none;
margin:0;
padding: 0;
 }

nav table{
border-spacing: 10px 0; 
}    
.make-block{
position:relative;
}
nav table td span{
clear:both;
text-decoration: none;
display: table-cell;
white-space: nowrap;
position:relative;
 }

 nav table td:hover{
background: #000;
color:#fff;
 } 


nav table td dl {
display: none;
position: absolute;
}

nav table td:hover dl{
display: block;
}

dd{
padding-right: 20px;
background: #fff;
overflow: hidden;
display: inline-block;
position:relative;
}

ul.l1 li{
clear: both;
font-weight:bold;
font-size:10px;
padding: 5px 0;
}

nav a{
  text-decoration: none;
}
.l1{
display: table-cell;
padding: 6px;
white-space: nowrap;
}  
以下是您可以使用的标记

<nav>
<table>
<td>
<div class="make-block">
    <span>a</span>
        <dl>
            <dd>
                <ul class="l1">     
                    <li><a href="#">b</a></li>
                    <li><a href="#">c</a></li>
                </ul>   
            </dd>
        </dl>
</div>
</td>
<td>
<div class="make-block">
    <span>b</span>
        <dl>
            <dd>
                <ul class="l1">     
                    <li><a href="#">b</a></li>
                    <li><a href="#">c</a></li>
                </ul>   
            </dd>
        </dl>
</div>
</td>
</table>
</nav>  

A.
B

以下是css

*{
list-style: none;
margin:0;
padding: 0;
 }

nav table{
border-spacing: 10px 0; 
}    
.make-block{
position:relative;
}
nav table td span{
clear:both;
text-decoration: none;
display: table-cell;
white-space: nowrap;
position:relative;
 }

 nav table td:hover{
background: #000;
color:#fff;
 } 


nav table td dl {
display: none;
position: absolute;
}

nav table td:hover dl{
display: block;
}

dd{
padding-right: 20px;
background: #fff;
overflow: hidden;
display: inline-block;
position:relative;
}

ul.l1 li{
clear: both;
font-weight:bold;
font-size:10px;
padding: 5px 0;
}

nav a{
  text-decoration: none;
}
.l1{
display: table-cell;
padding: 6px;
white-space: nowrap;
}  
以下是您可以使用的标记

<nav>
<table>
<td>
<div class="make-block">
    <span>a</span>
        <dl>
            <dd>
                <ul class="l1">     
                    <li><a href="#">b</a></li>
                    <li><a href="#">c</a></li>
                </ul>   
            </dd>
        </dl>
</div>
</td>
<td>
<div class="make-block">
    <span>b</span>
        <dl>
            <dd>
                <ul class="l1">     
                    <li><a href="#">b</a></li>
                    <li><a href="#">c</a></li>
                </ul>   
            </dd>
        </dl>
</div>
</td>
</table>
</nav>  

A.
B
国际海事组织

说明:“0”将“页边距顶部”和“页边距底部”设置为零。“自动”属性将左右边距设置相等,从而将导航设置为中心

IMO

说明:“0”将“页边距顶部”和“页边距底部”设置为零。“自动”属性将左右边距设置相等,从而将导航设置为中心

a{
字体系列:“verdana”,无衬线;
字体大小:粗体;
}
李国荣{
显示:内联块;
右边框:1px实心#fff;
}
nav ul li:悬停{
背景#5b545f;
背景:线性梯度(顶部,#4f5964 0%,#5f6975 40%);
背景:-moz线性梯度(顶部,#4f5964 0%,#5f6975 40%);
背景:-webkit线性梯度(顶部,#4f5964 0%,#5f6975 40%);
}
海军ulli a{
文字装饰:无;
颜色:#000;
填充:20px 20px;
显示:块;
}
nav ul li:悬停a{
颜色:#ffffff;
}
导航ul{
背景#5f6975;
边框半径:0;填充:0;
位置:绝对;顶部:100%;
显示:无;
}
导航ul li:悬停>ul{
显示:块;
}
李国宝{
D