手机
当前位置:查字典教程网 >网页设计 > Div+Css教程 >解决IE7下在DD DT中插入a元素导结果列表显示逐级向左
解决IE7下在DD DT中插入a元素导结果列表显示逐级向左
摘要:今天在项目中遇到了一个奇怪的BUG,在DD,DT之间加了个标签,结果列表显示逐级向左,样式跑偏,代码如下将标签删除后,显示正常,后来在网上查...

今天在项目中遇到了一个奇怪的BUG,在DD,DT之间加了个<a>标签,结果列表显示逐级向左,样式跑偏,代码如下

<dt></dt>

<a><dd></dd>

<a><dd></dd>

将<a>标签删除后,显示正常,后来在网上查了一下,可能的原因是:

根据 HTML4.01 规范可知,LI DD DT 元素只应存在于其对应的 UL OL DL 元素中,而由 UL OL DL 元素创建的列表从 HTML 规范的定义上说不应该包含具有其他意义的非列表元素 ('display' 不为 'list-item' ),但在实际中,经常会碰到诸如 DIV SPAN 甚至文本内容被放置在 LI 元素之后。

这个现象,与 LI DT DD 元素之后插入的非列表元素类型无关,也与包含 LI DD DT 元素的类型无关。从获取到的浏览器解析后的 HTML 代码可以看出IE6 IE7 IE8(Q) 会忽略 LI DD DT 元素的结束标记,并且位于同一个父元素内的 LI 元素在文档树中会前后相连。

【解决IE7下在DD DT中插入a元素导结果列表显示逐级向左】相关文章:

CSS怎么将背景图左移/上移/右移10px

CSS教程网站制作新闻列表方法

有趣的16进制颜色网站

CSS定位机制之一:普通流

在CSS中用attr()显示HTML属性值

div和span、relative和absolute、display和visibility区别

解决CSS浏览器兼容技巧

CSS控制背景图像平铺实现边框阴影效果

CSS样式和JavaScript脚本是应该放在外部文件中呢?

CSS定义DIV圆角边框

精品推荐
分类导航