Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 为什么li项默认为换行符?_Css_Html Lists - Fatal编程技术网

Css 为什么li项默认为换行符?

Css 为什么li项默认为换行符?,css,html-lists,Css,Html Lists,基本CSS问题。为什么默认情况下,li项以新行结束 <ul> <li>One</li> <li>Two</li> </ul> 我只是想看看是否有一个普遍的理解可以解释这一点,或者我是否必须了解列表是一个特例 Rich列表项元素显示: “显示”属性值为“列表项”的元素格式为块级元素,但前面有列表项标记。标记的类型由“列表样式”属性确定。根据“列表样式”属性的值放置标记: 但是,请按照以下方式描述它们对规范的实现,说明

基本CSS问题。为什么默认情况下,li项以新行结束

<ul>
  <li>One</li>
  <li>Two</li>
</ul>
我只是想看看是否有一个普遍的理解可以解释这一点,或者我是否必须了解列表是一个特例

Rich

列表项元素显示:

“显示”属性值为“列表项”的元素格式为块级元素,但前面有列表项标记。标记的类型由“列表样式”属性确定。根据“列表样式”属性的值放置标记:

但是,请按照以下方式描述它们对规范的实现,说明列表项显示值:

…生成内容的块框和单独的列表项内联框


无论哪种方式,
display:list item
都将生成一个块级元素,该元素通过在其内容前后添加换行符,强制自己绘制在新行上

li元素与块元素相关。块元素始终占据整行。记住h1,h2,h3,h4,div元素,等等。这些元素也具有相同的属性。正如您已经注意到的,这些元素可以使用display inline block对齐。

是的,它们在默认情况下被定位为一个新行,每个
li
标记,因为它是“list”标记。

因此,ul是一个块,并且它使用了宽度。它把它的项目放在一个内联框中,默认情况下,这些项目会在一个新行上结束(内联的名字是奇数?)。我试图了解是否有一个通用规则,但听起来我必须知道列表默认情况下会将项目放在新行上?所有列表类型(
ul
ol
dl
)都是
li
元素也可以被视为块级元素,只需添加一个前面的标记即可。好的,我买:-)虽然它不是标准块元素(并且在块元素列表中缺失),但就格式而言,它是块元素。谢谢伊恩。任何时候@Rich都是一个很好的问题,我同意你的观点,它不是那么清楚。MDN和W3C材料始终是获取准确信息的goto资源:)你的意思是它的母公司是ul?li不是块元素-显然是内联框。我会想象它就像文本一样,填满宽度,直到它到达框的边界,然后进入下一行。显然,情况并非如此:-)
li {
  display: list-item;
  text-align: -webkit-match-parent; }