1

我已将 li 元素的填充设置为 0,但仍有大约 10 个像素的填充。如何缩短提供的填充量?

4

1 回答 1

0

不想无聊:) 但在我看来,否定声明text-intend:-5px;是一种错误的把戏。我知道它确实会欺骗浏览器的默认样式。但基本上它只是将文本移动到父元素之外,从而产生类似于悬挂的意图。我试图找到那些浏览器继承的样式,但没有一个会在子弹/圆盘周围创建这样的填充。

我做了一些研究,发现 CSS3 有特殊的伪元素::marker来解决这个问题。这个想法很棒,但不幸的是它仍然没有在任何浏览器中实现:(

Mozilla 有自己的临时技巧来更好地设计项目符号:-moz-list-bullet- https://developer.mozilla.org/en-US/docs/CSS/:-moz-list-bullet
没有其他供应商支持或实施过这种黑客攻击

CSS3 还为 list-style-position: hanging提供了新值,这可能会有所帮助。但它仍然没有很好的定义。

另一种解决方案是使用伪元素::before(IE7 不支持)

li:before { 
 content:"•";  
 margin-right:1px;
}

毕竟似乎没有任何兴趣或需要解决这个问题。大家开心就好text-intend
公平地说,归根结底,您为什么要删除项目符号和文本之间的空格:))我认为他们所谓的就是这种情况-意外实现

于 2013-01-30T05:51:10.283 回答