Html 如何使所有列表项的宽度相等?

Html 如何使所有列表项的宽度相等?,html,css,xhtml-1.0-strict,Html,Css,Xhtml 1.0 Strict,我希望每个ul元素的导航栏宽度相等。我已经为ul.navbar a和ul.navbar li尝试了Width:100%。JSfiddle: CSS: HTML: 家 从您的中删除显示:内联。这使得它像一个内联元素一样工作(例如,等) 顺便说一下,您的上的width:100%不起作用的原因是内联元素不能采用宽度。如果您希望它是内联的,但也具有一定的宽度,则需要使用display:inline block。如果你想让你的5件物品排成一行,那么你可以使用: ul.navbar li { d

我希望每个
ul
元素的导航栏宽度相等。我已经为
ul.navbar a
ul.navbar li
尝试了
Width:100%
。JSfiddle:

CSS:

HTML:


从您的
  • 中删除
    显示:内联
    。这使得它像一个内联元素一样工作(例如
    等)

    顺便说一下,您的
  • 上的
    width:100%
    不起作用的原因是内联元素不能采用宽度。如果您希望它是内联的,但也具有一定的宽度,则需要使用
    display:inline block
    。如果你想让你的5件物品排成一行,那么你可以使用:

    ul.navbar li {
      display: inline-block;
      width: 20%;
      …
    }
    

    您必须确保HTML中的列表项之间没有空格,因为当所有项都是
    display:inline
    display:inline block
    时,空格本身会占用空间。一种更为防弹的方法是将它们全部向左浮动,但这有其自身的问题。

  • 中删除
    display:inline
    。这使得它像一个内联元素一样工作(例如
    等)

    顺便说一下,您的
  • 上的
    width:100%
    不起作用的原因是内联元素不能采用宽度。如果您希望它是内联的,但也具有一定的宽度,则需要使用
    display:inline block
    。如果你想让你的5件物品排成一行,那么你可以使用:

    ul.navbar li {
      display: inline-block;
      width: 20%;
      …
    }
    

    您必须确保HTML中的列表项之间没有空格,因为当所有项都是
    display:inline
    display:inline block
    时,空格本身会占用空间。一种更为防弹的方法是将它们全部浮动到左侧,但这有其自身的一系列问题。

    将内部锚定设置为

    ul.navbar a {
        display: inline-block;
        width: 80px;
    }
    
    为内容设置足够长的宽度


    将内部锚定设置为

    ul.navbar a {
        display: inline-block;
        width: 80px;
    }
    
    为内容设置足够长的宽度


    我对你的小提琴做了一些改动。你可以找到它。希望这可能是你问题的答案

    我已经修改了您的CSS,如下所示:

    ul.navbar li {
        display:inline;
        margin:0;
        padding:0px;
        text-align:center;
        padding: 10px;
    }
    ul.navbar a {
        background-color:#00CCFF;
        border-radius:100px;
        margin: 0 10px;
        min-width: 75px;
        padding:10px;
        float:left;
        text-decoration:none;
        color:#CF0;
        display:block;
    }
    

    我对你的小提琴没做什么改动。你可以找到它。希望这可能是你问题的答案

    我已经修改了您的CSS,如下所示:

    ul.navbar li {
        display:inline;
        margin:0;
        padding:0px;
        text-align:center;
        padding: 10px;
    }
    ul.navbar a {
        background-color:#00CCFF;
        border-radius:100px;
        margin: 0 10px;
        min-width: 75px;
        padding:10px;
        float:left;
        text-decoration:none;
        color:#CF0;
        display:block;
    }
    

    这不起作用,因为我希望它显示内联而不是上下。哦,好的。在这种情况下,您有5个列表项,因此最好的选择是给它们
    display:inline block
    width:20%
    。我将编辑我的答案。这不起作用,因为我希望它显示内联而不是上下。哦,好的。在这种情况下,您有5个列表项,因此最好的选择是给它们
    display:inline block
    width:20%
    。我会编辑我的答案。我会。。。那些标签真的很有趣。我哈哈。。。这些标签确实很有趣。我想知道是否有办法(现在是2017年)让它们相等,而不必猜测“足够长”的值?例如,对于通用模板@user312567,我认为您需要使用。这里是一个例子。我想知道是否有一种方法(现在是2017年)可以使它们相等,而不必猜测“足够长”的值?例如,对于通用模板@user312567,我认为您需要使用。这是一本书。