[英]Need to center a ul within a div ie6 & ie7
我有一个ul,我需要在div中居中。 我所拥有的代码(你将在下面找到)可以在除了ie6和ie7之外的每个浏览器中工作,其中内容是向左浮动而不是居中。 我已经删除了我的代码到基础知识。 我已经尝试通过许多修复工作,但尚未成功,所以任何有关这方面的帮助将不胜感激。
//CSS
#galleryThumbs {
width:900px;
height:125px;
text-align:center;
margin:0px auto;
}
ul.thumb {
margin:0;
padding:0;
list-style:none;
display:inline-block;
}
ul.thumb li {
width:65px;
height:65px;
margin:0 2px 0 2px;
border:1px solid #ffffff;
display:inline-block;
float:left;
}
//HTML
<div id="galleryThumbs">
<ul class="thumb">
<li><img src="http://www.thewoom.co.uk/clients/lowdklea/work/01_thumb1.jpg"></li>
<li><img src="http://www.thewoom.co.uk/clients/lowdklea/work/01_thumb2.jpg"></li>
<li><img src="http://www.thewoom.co.uk/clients/lowdklea/work/01_thumb3.jpg"></li>
</ul>
</div>
非常感谢Brendan
IE 6和IE 7不支持display:inline-block
您可以使用IE CSS hack来覆盖inline-block
元素
zoom: 1;
*display: inline;
我会把IE条件评论中包含的那些仅限于目标IE。
IE6 / 7不支持display: inline-block
on elements默认display: block
。 另请参见Quirksmode.org:CSS2 - display
声明 :
IE 6/7仅接受具有自然
display: inline
元素的值display: inline
。
默认情况下, <ul>
是display: block
,所以这不起作用。
其中一个解决方案是给<ul>
一个固定的宽度,以便它可以通过margin: 0 auto
来居中。
没有hacks for Internet Explorer 7的解决方案将添加到您的代码中:
#yourdiv {
width: 100%;
position: relative;
text-align: center;
}
#yourdiv ul {
float: left;
position: relative;
left: 50%
text-align: center;
}
#yourdiv ul li {
float: left;
position: relative;
display: block;
right: 50%;
}
有了这个,您可以在Internet Explorer 7中将未排序的列表居中,而不会出现任何问题。
以上(我的意思是具有UL宽度声明的解决方案)解决方案是我唯一提出的解决方案。 顺便说一下,有两件事:
1-你的Doctype声明正在触发怪癖模式,因为img标签没有正确关闭xhtml样式。
2- Paniyar为CENTER的Float开发了一处新物业。 它不存在。 至少不在我的书中。
我的两分钱......
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.