html5中文学习网

您的位置: 首页 > 网页制作 > css教程 » 正文

解决IE7下在DD DT中插入a元素导结果列表显示逐级向左_浏览器兼容教程_CSS_网页制作

[ ] 已经帮助:人解决问题
点评:在DD,DT之间加了个a标签,结果列表显示逐级向左,样式跑偏,百度一下的解决方法如下,感兴趣的朋友不要错过
今天在项目中遇到了一个奇怪的BUG,在DD,DT之间加了个<a>标签,结果列表显示逐级向左,样式跑偏,代码如下 73THTML5中文学习网 - HTML5先行者学习网

复制代码
代码如下:
73THTML5中文学习网 - HTML5先行者学习网
<dt></dt> 73THTML5中文学习网 - HTML5先行者学习网
<a><dd></dd> 73THTML5中文学习网 - HTML5先行者学习网
<a><dd></dd> 73THTML5中文学习网 - HTML5先行者学习网
73THTML5中文学习网 - HTML5先行者学习网
将<a>标签删除后,显示正常,后来在网上查了一下,可能的原因是: 73THTML5中文学习网 - HTML5先行者学习网
73THTML5中文学习网 - HTML5先行者学习网
根据 HTML4.01 规范可知,LI DD DT 元素只应存在于其对应的 UL OL DL 元素中,而由 UL OL DL 元素创建的列表从 HTML 规范的定义上说不应该包含具有其他意义的非列表元素 ('display' 不为 'list-item' ),但在实际中,经常会碰到诸如 DIV SPAN 甚至文本内容被放置在 LI 元素之后。 73THTML5中文学习网 - HTML5先行者学习网
73THTML5中文学习网 - HTML5先行者学习网
这个现象,与 LI DT DD 元素之后插入的非列表元素类型无关,也与包含 LI DD DT 元素的类型无关。从获取到的浏览器解析后的 HTML 代码可以看出IE6 IE7 IE8(Q) 会忽略 LI DD DT 元素的结束标记,并且位于同一个父元素内的 LI 元素在文档树中会前后相连。
(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助