我在IE7浏览器中遇到伪元素(:before,:after,:last-child)的问题。
实际上我想绘制一个看起来像这个捕获的树(IE11):
但是当我在(IE7)上执行索引时,我的渲染错误:
有关我已经使用过Selectivizr的信息(这是一个允许你利用CSS3选择器的JavaScript库)但不适合我!
此代码只是一个示例,看起来像我使用的项目结构(struts2,dojo):
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Tree</title>
<!--[if (gte IE 6)&(lte IE 8)]>
<script type="text/javascript" src="selectivizr.js"></script>
<![endif]-->
<link href="demo1.css" rel="stylesheet">
</head>
<body>
<div class="test">
<div>
<a href="#"> + </a>
<a href="#"> Label A </a>
</div>
<ul class="recherche_non_rendu">
<li>
<div class="test">
<div>
<a href="#"> + </a>
<a href="#"> Label A1 </a>
</div>
<ul class="recherche_non_rendu">
<li>
<div class="test">
<div>
<a href="#"> + </a>
<a href="#"> Label A11 </a>
</div>
</div>
</li>
<li>
<div class="test">
<div>
<a href="#"> + </a>
<a href="#"> Label A12 </a>
</div>
</div>
</li>
</ul>
</div>
</li>
</ul>
</div>
</body>
</html>
我的风格css:
.test ul {
padding:0;
margin: 0;
margin-left:6px;
list-style:none;
background: #fff;
color:#000;
position:relative;
}
.test ul:before {
content:"";
position:absolute;
top:0;
bottom:0;
left:0;
border-left:1px solid #000;
}
.test li {
margin:0;
padding:0 16px;
line-height:2em;
font-weight:bold;
position:relative;
}
.test li:before {
content:"";
display:block;
width:10px;
height:0;
border-top:1px solid #000;
margin-top:-1px;
position:absolute;
top:1em;
left:0;
}
.test li:last-child:before {
background:white;
height:auto;
top:1em;
bottom:0;
}
任何帮助将不胜感激。