HTML float 属性不起作用

标签 html css

我正在尝试为我的页面创建一个标签,但我的链接没有水平显示。我使用了 float:left 来使链接水平显示。请告诉我为什么?

    <html>
     <head>
      <title>Test</title>
        <style type="text/css">

            #navbar #holder ul {
               list-style: none;
               margin: 0;
               padding:0;           
                 }

            #navbar #holder ul li a {
            text-decoration:none;
            float: left;
            line-height:20px;
            margin-right:5px;
            font-family:Calibri;
            color:#000;
        }

     </style>
   </head>

  <body bgcolor="SteelBlue">
     <div id="navbar">
        <div id="holder">
            <ul>
               <li><a href="#">Home</a></li>
               <li><a href="#">Product</a></li>
               <li><a href="#">Mixers</a></li>
               <li><a href="#">Others</a></li>
           </ul>
        </div>
      </div>

 </body>
 </html>

最佳答案

需要将 float left 属性应用于 Li 元素。

在您的代码中,它被应用于 Li 中的 a 元素。

这可以工作,但是如果父元素有任何高度(或者如果 overflow:hidden 应用于它),它们将堆叠在彼此之下并且子元素的起始位置将在左边,所以 float:left 不会改变他们的位置。

可能更容易将列表元素视为用于布局和定位,将 anchor 元素视为视觉外观。

#navbar #holder ul {
    list-style: none;
    margin: 0;
    padding:0;
}

#navbar #holder ul li {
    float:left;
}


#navbar #holder ul li a {
    text-decoration:none;
    line-height:20px;
    margin-right:5px;
    font-family:Calibri;
    color:#000;
    display:block;
}

关于HTML float 属性不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30991104/

相关文章:

html - 是否可以使用CSS获取垂直文本以将设置宽度填充到包含文本的最小高度的文本框?

javascript - 仍然可以在 Firefox 中使用 offcanvas 菜单水平滚动

javascript - 菜单切换按钮在 bootstrap 4 中不起作用

css - 如何应用颜色选择固定选项

javascript - 是否可以找到具有特定开头的 html 属性? (没有具体数值)

html - CSS 缩放图像在不透明度过渡时呈锯齿状/像素化

css - 使用现代 CSS 删除第一个元素的上边距

HTML/CSS : how do I make <p>s inside a <div> have different properties

android - PhoneGap cordova 创建卡住

css - 如何在视口(viewport)中将一组 JQuery Mobile 单选按钮居中?