HTML 5中
spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgb(59 130 246 / .5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ;">>、<br/" class="md-entity" style="box-sizing: border-box; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgb(59 130 246 / .5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ;">>和<br /" class="md-entity" style="box-sizing: border-box; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgb(59 130 246 / .5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ;">>的使用区别
技术背景
在HTML和XHTML中,<br> 标签用于插入换行符。然而,不同版本的HTML和XHTML对该标签的书写格式有不同要求,这常常给开发者带来困惑。理解这些差异对于编写兼容且规范的代码至关重要。
实现步骤
HTML 4及之前版本
在HTML(直到HTML 4)中,建议使用 <br>。因为在HTML中,某些元素(如 <br>)是“空元素”,只需要开始标签,不需要结束标签。
HTML 5
- 首选格式:<br> 是首选格式。根据HTML5规范,空元素(如 <br>)只有开始标签,且可以使用自闭合标签语法,但结束标签必须省略。
- 可接受格式:<br/> 和 <br /> 也是可以接受的。HTML5允许使用闭合斜杠是为了与之前的HTML 4.01和XHTML 1.0文档兼容,便于向HTML5迁移。
XHTML
- 首选格式:<br /> 是首选格式。在XHTML中,所有元素都必须有对应的结束标签,对于空元素,通常使用自闭合标签语法。
- 其他可接受格式:也可以使用 <br/> 或 <br></br>。
核心代码
HTML示例
<p>这是一段文本<br>这是换行后的文本</p>
XHTML示例
<p>这是一段文本<br />这是换行后的文本</p>
最佳实践
通用建议
- 如果是编写常规网站的HTML,且不需要考虑与XHTML的兼容性,那么使用 <br> 即可。
- 如果需要与XHTML兼容,或者使用的编辑器或工具更倾向于XML语法高亮,建议使用 <br />。
不同场景选择
- 输出HTML5作为普通文本/html:可以使用 <br> 或 <br/>。
- 将HTML5作为XHTML服务(即内容类型为 application/xhtml+xml 并带有XML声明):必须使用自闭合标签,如 <br/>。
常见问题
兼容性问题
- 旧浏览器:一些旧浏览器在解析XHTML时可能会出现问题,例如可能无法正确处理 <br/>,而 <br /> 更具兼容性。
- 不同渲染效果:在某些浏览器中,<br> 和 <br /> 可能会有不同的渲染效果。例如,某些浏览器可能会将 <br/> 解释为 <br></br>,从而插入两个换行符。
验证问题
- 可以使用 W3C验证器 来检查HTML文件的有效性,但该验证器可能无法检查内容类型。
编码规范问题
- 为了保持代码的一致性和规范性,建议团队成员统一使用一种格式。通常,遵循XML规范的 <br /> 是一个不错的选择,因为它具有更好的兼容性和可维护性。