我的问题是:以下行为是定义还是错误?
我已经看到了各种解决方法的答案,但不是关于行为本身。
默认情况下,每个 <li> 对向左浮动的块的子弹在块内而不是右侧呈现。但是,这就是我希望它呈现的方式(块和项目符号之间的空间,直到 <li>s 下降到元素下方,然后父块的边缘和项目符号之间的空间量相同):
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Page Title</title>
<style type="text/css">
.my_div {
float: left;
background-color: #CCF;
/* To push <li>s out */
margin-right: 25px;
}
.my_ul {
/* Consistency across all browsers */
padding-left: 25px;
/* Fix for Opera only */
list-style-position: inside;
}
</style>
</head>
<body>
<div class="my_div">Some text<br>Second line</div>
<ul class="my_ul">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
</ul>
</body>
</html>
尝试删除.my_ul
样式并margin-right
再次查看。我预计它会以相同的方式呈现,但事实并非如此。它在我测试过的所有浏览器(Opera 12、Firefox 17、Chrome 23、Internet Explorer 8、Safari 5)上都一样。