我在使用 IE9(和 8)在图像上定位空(有点)锚元素时遇到问题。锚点包含文本,但它是使用 CSS 的 text-indent 属性从页面开始的。
我正在一个有一系列促销面板的网站上工作,它们都包含在 UL 中。每个 LI 内部都有一个宣传图片,以及位于其不同区域的 1 个或多个锚元素。IMG 和 A 元素绝对定位在 LI 元素中。因此,基本结构看起来像 UL > LI > IMG A A。
此设置在 Firefox 和 Chrome 中运行良好,但 IE 不喜欢它。我试过在这个设置上使用 z-index 没有运气。
谁能解释 IE 遇到的问题,并为我的 CSS 提供更好的解决方案?我使用 div、img 和单个锚点为我的问题制作了一个快速/简化的示例。这可以复制/粘贴到您的机器上以查看它的运行情况。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta name="Description" content="" />
<meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
<link type="text/css" rel="stylesheet" href="" />
<style type="text/css">
#div {
z-index:1;
display: block;
background:red;
position:relative;
}
#image {
z-index:2;
position:absolute;
top:0;
left:0;
display:block;
}
#anchor {
z-index:3;
display:block;
overflow:hidden;
position: absolute;
top:0;
left:0;
text-indent:-9999px;
width:640px;
height:480px;
}
</style>
</head>
<body>
<div id="div">
<img id="image" src="http://farm8.staticflickr.com/7130/7438112718_2e8340081b_z.jpg" />
<a href="#" id="anchor">clicky</a>
</div>
</body>
</html>
我对 UL > LI > IMG A 布局没有太多控制权。这是设置,当我们获得新的促销时,我们可以轻松地更新图像,并且只需根据图像有多少“号召性用语”轻松添加或删除锚点。A 元素的定位是内联注入的。
谢谢!