UL标签周围的垂直间距
问题描述:
<div>
标签和<ol>
或<ul>
标签之间的意外差异之一是列表标签在块的顶部和底部添加了20px的填充,以指定在样式属性中指定的任何值。UL标签周围的垂直间距
实际上,使用<div><li></li><li></li></div>
可以给出所需的结果。虽然这种解决方法显然是非法的 - (问题2031725)。我猜这个解决方法是海报想到的。
Firefox/Safari/IE共享此行为。这个问题是否源于HTML规范?还有其他明显的解决方法吗?这似乎是一个明显的缺陷,我听到很多抱怨。
答
<ol>
和<ul>
附近的垂直空间标记不是HTML的一部分,而是浏览器的默认样式。如果您不喜欢该风格,请使用change it而不是使用无效的HTML。
我也会反对“无意识的差异”。 <ol>
和<ul>
具有固有的语义含义(分别是有序列表和无序列表),因此浏览器默认使用它们来支持该含义。 <div>
几乎没有语义含义,所以默认情况下是无风格的。
您不能拥有没有列表的列表项目。首先是鸡蛋或鸡肉类的东西。使用标准的HTML和CSS来达到预期的效果。这也不是一个解决方法,它只是格式不正确的HTML。 – 2010-09-13 19:59:22
HTML用于标记某些文本*是*(列表,段落,表格等),CSS用于控制它的外观。尝试并坚持这种思维方式,你会活得更久。 – 2010-09-13 20:16:25