这个和 CSS 没关系。而且按新的 HTML 规范,已经不按 inline 和 block 来区分元素类型了。在规范中每个元素会规定如下两项:CategoriesContent Model
Categories 是改元素本身的分类,content model 规定了合法的元素的内容(子元素、文本等)类型。a 元素的 content model 为 transparent。Some elements are described as transparent; they have "transparent" in the
description of their content model. The content model of a transparent element is
derived from the content model of its parent element: the elements required in the part of the
content model that is "transparent" are the same elements as required in the part of the content
model of the parent of the transparent element in which the transparent element finds itself.大意就是这类元素本身内部可以有任何类型的内容,是否合法要看其父元素的 content model 和其内容的 categories。比如我们要看 p > ins > a > div 是否合法,过程是这样的:p 元素的 content model 是 phrasing content,ins 本身属于 phrasing content 故可以嵌套;ins 元素的 content model 是 transparent,故在此时里面是否能有 a 需检查 p > a 的合法性;a 元素也属于 phrasing content,故 p > ins > a 合法;a 元素的 content model 也是 transparent,故此时里面包含 div 的合法性向上传递,检查 ins > div 又向上传递,变成检查 p > div;div 不属于 phrasing content,所以这个嵌套是不合法的。
路过看见扯一嘴非要从标准说的话肯定跟CSS没关系的得看HTML标准可是这货呢 HTML4 和 HTML5 说法又完全不一样H5的鸟规范整出一堆概念就如同 @顾轶灵 说的一样H4 里说的简单到爆这部分基本就一句“通常情况下行内级元素不能包含块级元素”看看通常情况下呢所以这句然并卵厂商压根不鸟厂商鸟的只有特定规定比如"P元素不能包含其他块级元素(包括P自身)"等等所以H4里“不能”才有约束作用"通常情况下不能" 就然并卵就这样咯
热门标签:
http://tags.nuil.cn/
分享到:
相关推荐
根据标签语义化的理念,行内元素最好只包含行内元素,不包含块级元素。 转换 当然块级元素与行内元素之间的特性是可以相互转换的。HTML可以将元素分为行内元素、块状元素和行内块状元素三种。 使用display属性能够...
在那个时候,如果我们尝试将块级元素包裹在一个a标签内,浏览器通常会将这些块级元素强制解析为多个行内元素,也就是说,原本的块级元素可能会被分割成多个a标签,每个a标签仅包含原块级元素的一部分。这种做法导致...
块级元素通常会在新的一行开始显示,并占据页面的整个宽度,它们可以包含其他块级或内联元素。而内联元素则只占据其内容所需的空间,并允许与其他内联元素在同一行内并排显示。 标题中的问题——"标签 li 是不是...
行内元素可以包含文本、图片、链接等,但不能包含块级元素,典型的行内元素包括<a>、、、、、、等。行内元素的默认宽度只与其内容相关,不受周围布局的影响。 HTML还定义了可变元素(可替换元素,replaced element...
html标签分为两种,内联元素和块级元素,首先我们先了解一下内联元素和块级元素的概念:...根据块级元素的概念我们可以理解为块级元素前后带有换行符,也就相当于元素前后加了一个 标签。我们可以把块级元素想象成一
2. 内联元素内部可以包含块级元素,虽然不常见,但这样做可以改变内联元素的高度,比如在一个`<a>`标签中嵌套一个`<div>`。 了解这些基本概念后,开发者可以更有效地利用HTML和CSS来构建网页,实现所需的布局效果。...
块级元素可以包含行内元素和其他块级元素。 2. **行内元素和块级元素的相互转换** 通过CSS的`display`属性,可以实现两种元素类型的转换: - 行内元素转为块级元素:`display: block;` - 块级元素转为行内...
块级元素通常会在新的一行开始,并且可以包含内联元素和其他块级元素。例如,`<p>`标签(段落)、`<form>`标签(表单)、以及`<div>`标签(通用布局容器)都是常见的块级元素。块级元素的特点是它们会占据整个宽度,...
* `div`:常用块级元素,也是 CSS 布局的主要标签 * `dl`:定义列表元素,用于显示定义列表 * `fieldset`:表单控制组元素,用于将表单控件分组 * `form`:交互表单元素,用于创建表单 * `h1-h6`:标题元素,用于...
1. 块级元素可以包含内联元素,也可以包含其他块级元素,但内联元素只能包含其他内联元素,不能包含块级元素。例如,`<div>`可以包裹`<h1>`和`<p>`,而`<a>`可以包裹`<span>`,但`<span>`不能包裹`<div>`。 2. 不应...
例如,当我们需要创建一个水平导航栏时,可能会使用行内元素如`<a>`标签,而当我们要创建一个包含多个部分的内容区域时,可能会使用块级元素如`<div>`。此外,通过CSS的display属性,我们可以将元素从一种类型转换为...
HTML元素分为不同的类别,主要包括内联元素、块级元素和可变元素。 1. **内联元素**: 内联元素在页面布局中占据连续的文本空间,不会在前后引入新的行。这些元素主要用于文本修饰和插入其他内容,例如链接、强调和...
在HTML5中,我们可以创建一个包含内容的块级元素,如`<div>`,并设置其为居中容器。首先,确保容器元素具有固定的宽度和高度,以便我们有参考点进行居中对齐。容器的CSS样式可能如下: ```css .container { width:...
例如,一个块级元素可以包含一个或多个块级元素,而一个块级元素内部可以包含、<a>等内联元素,但不能直接包含另一个。如果嵌套不当,会导致文档的结构不符合标准,进而影响浏览器对页面的解析和渲染。 嵌套规则还...
值得注意的是,通过CSS的`display`属性,可以改变元素的默认行为,使得替换元素表现得像非替换元素,或者让块级元素和行内元素互相转换,这为网页设计提供了极大的灵活性。例如,将一个`<div>`的`display`属性设为`...
常用的块级元素包括: p, h1~h6, div, ul等; 2. Inline element: 指依附其他块级元素存在, 紧接于被联元素之间显示, 而不换行. 常用的内联元素包括: img, span, li, br等; 3. Top-level element: 包括html, body, ...