3

这是我的代码:

<html>
<head>
<style type="text/css">
 ul {list-style:none; margin:0; padding:0;   }
  li{ float:left;  background-color:#444444; text-align: center; width: 100px;  
  border-right:1px solid white; color: white; }

li ul li { float: none;
         border-top:1px solid white;}

         li ul { visibility:hidden; position: absolute;}
        li:hover ul {visibility:visible;}
  </style>
</head>
<body>
     <ul>
       <li>home</li>
       <li id="up">pages
       <ul class="down">
       <li>a</li>
       <li>b</li>
       <li>c</li>                  
      </ul>
       </li> 
     </ul>    
</body>
</html>

在 li ul 部分,如果我只放置可见性:隐藏,它不会隐藏在那里仍然有一列,为什么?

4

1 回答 1

7

visibility: hidden;这与和说之间的区别有关display: none;

visibility: hidden;隐藏元素,但它仍然占用布局中的空间。

display: none;从文档中完全删除元素。它不占用任何空间,即使它的 HTML 仍在源代码中。

position: absolute;该元素完全从正常流程中移除。

于 2012-11-30T03:01:46.830 回答