【发布时间】:2011-07-27 08:46:02
【问题描述】:
我遇到了一个问题,即绝对定位的 div 隐藏在浮动 div 后面。我已经在堆栈上阅读了很多内容来解决这个问题,但我尝试过的都没有,所以我将把源代码放在这里。我不知道我错过了什么。
如果您单击“浏览”文本,我会让 jquery 打开一些选项的菜单。选项位于绝对定位的 div 中,您将在 ie7 模式下在其下方的 div 内容后面看到它们。我在 IE7 模式下使用 IE9 + IE7 标准来获得这个结果。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-us">
<head>
<title>IE7 Absolutely Positioned Element Issue</title>
<style type="text/css">
* { font-family: Tahoma; font-size: 8pt; padding: 0; margin: 0; border: 0 none; }
div.section { width: 400px; margin: 0 auto; border: 1px solid #444444; margin-top: 5px; }
div.toggleBrowseMenu { cursor: pointer; padding-left: 5px; position: relative; }
div.browseMenu { border: 1px solid #E2E2E2; position: absolute; width: auto; height: auto; left: -3px; top: 19px; padding: 0px; background-color: #FFFFFF; display: none; text-align: left; z-index: 10; }
div.browseMenu ul { list-style-type: none; }
div.browseMenu li { background-color: transparent; padding: 3px 7px; margin: 0px; white-space: nowrap; }
div.browseMenu li:hover { text-decoration: underline; }
</style>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
</head>
<body>
<div class="section" style="position: realtive;">
<div style="float: left; padding-left: 100px;">
Left Content
</div>
<div class="toggleBrowseMenu" style="float: right; padding-right: 100px;">
Browse
<div class="browseMenu">
<ul>
<a href="http://www.google.com/"><li>Google</li></a>
<a href="http://www.yahoo.com/"><li>Yahoo</li></a>
<a href="http://www.bing.com/"><li>Bing</li></a>
</ul>
</div>
</div>
<div style="clear: both;"></div>
</div>
<div class="section">
<div style="position: relative;">
<div style="float: left; width: 40%; padding: 5%;">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque at augue at
tellus tristique porta. Nulla rhoncus tincidunt turpis, eu mattis dui
scelerisque in. Vivamus lectus velit, consectetur at pellentesque dignissim,
faucibus id lacus. Aliquam ut eros at erat convallis tincidunt id vel velit.
Pellentesque commodo, nulla sed malesuada convallis, ipsum nulla viverra lorem,
et mattis sapien nibh nec magna. Donec a nibh ligula. Suspendisse at convallis
libero. Phasellus cursus nibh at mi aliquet venenatis. Donec non tortor vitae
sapien facilisis imperdiet. Proin molestie tempor dapibus. Suspendisse potenti.
Nulla facilisi. Suspendisse risus est, faucibus sit amet laoreet in, cursus ut
augue. Cras mollis venenatis est, nec vehicula massa pellentesque et.
</div>
<div style="float: left; Peach; width: 40%; padding: 5%;">
Fusce adipiscing odio quis massa placerat euismod. In eu eros orci. Aenean
mollis luctus velit ac sollicitudin. Cras elit erat, semper quis fringilla ac,
placerat sed justo. Duis sed tellus risus, fermentum pellentesque nunc.
Phasellus mollis tempus eros, posuere dictum augue gravida at. Praesent
sollicitudin justo ac purus iaculis auctor. Suspendisse potenti. Praesent
vehicula fermentum sem in ullamcorper. Donec pharetra ante vitae urna pharetra
dignissim. Suspendisse tincidunt felis elementum lorem imperdiet ullamcorper.
In malesuada, arcu a porta tincidunt, nisl elit pulvinar lacus, in dictum velit
odio eget risus. Integer cursus dapibus tortor ut congue. Nunc mattis mollis
justo. Aliquam quis tellus tellus, eu sagittis tellus. Class aptent taciti
sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.
</div>
<div style="clear: both;"></div>
</div>
</div>
<script type="text/javascript">
// Toggle the browse menu.
$('.toggleBrowseMenu').click(function ()
{
$(this).find('.browseMenu').toggle();
});
// Hide the browse menu when the mouse leaves the tag.
$('.browseMenu').mouseleave(function ()
{
$(this).hide();
});
</script>
</body>
</html>
【问题讨论】:
-
当然是这些
<a href="http://www.google.com/"><li>Google</li></a>s/b<li><a href="http://www.google.com/">Google</a></li> -
从列表项标签中删除锚标签无效。
标签: html css internet-explorer css-position