list-style:none outside none;的作用

北慕城南 提交于 2019-12-26 21:52:35

今天在论坛里面看到一篇文章,讲的是以前忽略的一个问题。就是当ul里面有float和display:inline,在ie6、ie7里面会有一些问题。一般对ul进行reset也好,或是设置ul的样式时,往往要写list-style-type:none,有时偷懒点写list-style:none。这个在ff、ie8下面显示正常,列表符隐去不见,li里面的内容与框之间没有距离,但是在ie6、ie7里面虽然也会隐去列表符,但是会保留列表符在li里面占得位置。

   废话少说直接上代码:

<style type="text/css">
body,ul,li,p {padding:0;margin:0;font-size:12px;}
p{font:bold 16px/180% arial;}
div{float:left;display:inline;background:#eee;margin-right:10px;}
p span{text-decoration:line-through;}
ul{width:275px;margin:4px 0 0 15px;background:aqua;}
  .ul01{float:left;display:inline;}
.ul01,.ul01 li{list-style:none ;}
</style>

<div>
      <p>1: list-style:none;</p>
      <ul class="ul01">
   <li><a href="#">aaaaaaaaaaaa</a></li>
   <li><a href="#">aaaaaaaaaaaaaaaaa</a></li>
   <li><a href="#">aaaaaaaaaaaaaaaaaa</a></li>
   <li><a href="#">aaaaaaaaaaaaaaaaaaa</a></li>
   <li><a href="#">aaaaaaaaaaaaaaaaaaaaaaaaaa</a></li>
   <li><a href="#">aaaaaaaaaaaaaaaaaaaaaaaaaaa</a></li>
   <li><a href="#">aaaaaaaaaaaaaaaaaaaaaaaaaa</a></li>
   <li><a href="#">aaaaaaaaaaaaaaaaaaaaaaaaaaaa</a></li>
   <li><a href="#">aaaaaaaaaaaaaaaaaaaaaaaaaaaa</a></li>
      </ul>
      </div>
</body>

效果如图:ff下正常显示


          ie6、ie7下面的效果

先可以在firebug里面看看list-style包含的属性有哪些:

造成ie6、ie7下面这种效果差别,是因为属性list-style-position:inside是他们的默认值即使设置了list-style:none。当UL不具有float和display:inline;时,无论有没有list-style:none这个属性,列表符都被隐藏,不占位置。

原文请到http://www.blueidea.com/tech/web/2010/7616.asp上看,那里有详细的解释

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!