什么是插入的危险<li>...</li>
到页而无需在包围所述项目(S) <ul>
阻止? 例如:
<div style="border:solid 1px red;">
<li>Item</li>
<li>Another Item</li>
<li>Yet Another Item</li>
</div>
验证是我最不担心,我想知道什么按预期,这可能为最终用户查看网页浏览器的能力打破。
什么是插入的危险<li>...</li>
到页而无需在包围所述项目(S) <ul>
阻止? 例如:
<div style="border:solid 1px red;">
<li>Item</li>
<li>Another Item</li>
<li>Yet Another Item</li>
</div>
验证是我最不担心,我想知道什么按预期,这可能为最终用户查看网页浏览器的能力打破。
这不是有效的标记在所有。 如果它被正确地显示,这只是运气的问题。
你似乎来定义危险“为最终用户查看网页浏览器的能力打破按计划”,然后是它的危险。
浏览器都在尽力弥补无效的标记,但没有在所有的网页无法保证得到正确显示。
你说的验证是至少您的问题,请重新考虑,并看看为什么要验证? 。 如果你关心你的网页是没有与怪癖正确显示,然后再验证。
最后, HTML整洁可以帮助你修复现有的HTML。
编辑: 我提交了片段browsershots.org看到它如何被用不同的浏览器渲染 。
使用无效的标记喜欢你的例子可以导致不同的网页意外行为。 如果您使用有效的标记,浏览器将(或应该)基于规范显示您的内容。 但是如果你使用无效的标记时,浏览器会尝试interperet的标记,并显示它是如何认为你的意思是它是网页。 有时,他们会显示它你想要的,有时没有。 下面是从Mac上的Firefox 3.5的例子。
第一个列表是你的代码,而是使用正确的<ul>
标签代替<div>
标记。 第二个名单是完全你的代码。 注意第二个名单是缺少左侧和子弹默认边距。
基本上,什么都不会死,如果你使用无效类似这样的标记,但它是非常糟糕的做法,因为这会导致意外的和不一致的结果。
这与使用<td>
标签内<p>
。 当然,它可能会以某种方式工作在某些浏览器,但它肯定会被打破。 这种结构的行为是不确定的 ,也有关于将如何在不同的浏览器中没有任何保证。 不说话的可访问性,屏幕阅读器程序会相当困惑关于这种结构。
为什么你不能用一个适当的<ul>
或<ol>
标签? 它可以风格和处理的方式为相同<div>
这是呼应别人的答案,部分:与任何标记,还有是否有用,或者没有对你在测试它的浏览器的一个经验问题。 你测试了所有浏览器,你的快乐。 这很酷,是工作的重要部分。
但除此之外,这里还有它可能如何对你没有测试浏览器的平台组合的工作假设性的问题,或者是因为:
对于这组,它总是变为相关的早晚,你应该遵循的标准 - 在可能的情况 - 和使用封闭UL或OL标签(在这种情况下)。
另外值得一提的是,它使LI标签更容易追查,如果你正在做的脚本,或者如果有人你的页面上做脚本(如Greasemonkey的)。
我不明白为什么它会无法正常显示,而它并不意味着在它自己的存在,它会呈现罚款。
你应该把它放在一个<ul>
有来标记没有好处,你使用过没有这样做正确。
作为一个网页设计师/开发人员,你知道你的路要走,当你开始写HTML,即使FrontPage或Microsoft Word中不会产生。
坚持标准是双向的。 如果我们想浏览器开发人员创建快速,可靠和一致的渲染引擎,我们需要通过创建一致的,清洁的,并形成HTML,以满足他们中途。
在不同的浏览器意外渲染的行为? 搜索引擎优化?
这将是到浏览器的实现来决定该怎么做。 如果你真的想这样做,在所有你想要使用它之前支持的浏览器测试一下。
还要注意的是,浏览器的行为可能会改变未来。
危险吗? 它不会打击任何东西。 这可能会导致问题,如果布局以任何方式对你很重要。
你只是不知道浏览器将如何呈现它。
我真的不能想象为什么你不会想要把<ul>
或<ol>
标签,它们定义列表。 然后,您对如何显示的列表控制,不会离开它的浏览器来决定,这是非常重要的。 缺少出来的只是写无效的标记,是它会在某些浏览器工作,但ID的确想让他们进来。
大多数浏览器可能会采取并运行它, 但也有两种不同的列表类型的缴费:无序<ul>和有序列表<OL>,其中有序列表中有每个项目编号。
在每行的末尾,然后<br />;如果不使用<li>标签,你可以使用“•”项目符号字符(公牛)。
我不会依赖于不确定的行为。 刚刚更换<div>
的<ul>
和使用CSS样式它。