相对容器中的绝对定位
相对容器中的绝对定位
我要讨论的最后·个主要浏览器bug涉及相对定位容器中的绝对定位元素在前面的章节中你学到将绝对定位的元素嵌套在相对容器中是多么有用。但是,IE 6和更低版本在使用这种技术时有许多bug.
这些bug的原因在于相对定位的元素没有获得IEIWin的内部haSLayout属性。因此,它们不创建新的定位上下文,所有绝对定位元素相对于视口进行定位(见图9-11 )。 全文阅读 »
相对容器中的绝对定位,相对容器中的绝对定位 我要讨论的最后·个主要浏览器bug涉及相对定位容器中的绝对定位元素在前面的章节中你学到将绝对定位的元素嵌套在相对容器中是多么有用。但是,IE 6和更低版本在使用这种技术时有许多bug. ...
相对容器中的绝对定位
我要讨论的最后·个主要浏览器bug涉及相对定位容器中的绝对定位元素在前面的章节中你学到将绝对定位的元素嵌套在相对容器中是多么有用。但是,IE 6和更低版本在使用这种技术时有许多bug.
这些bug的原因在于相对定位的元素没有获得IEIWin的内部haSLayout属性。因此,它们不创建新的定位上下文,所有绝对定位元素相对于视口进行定位(见图9-11 )。 全文阅读 »
9.4.4 IE 6躲躲猫bug
另一个奇怪而且很烦人的bug是IE 6的躲躲猫(peek-a-boo) bug,之所以起这个名称是因为在某些条件下文本看起来消失了,只有在重新装载页面时才再度出现。出现这个bug的条件是:
一个浮动元素后面跟着一些非浮动元素,然后是一个清理元素,所有这些元素都包含在一个设置了背景颜色或图像的父元素中。如果清理元素碰到了浮动元素,那么中间的非浮动元素看起来消失了,隐藏到了父元素的背景颜色或图像后面,只有在刷新页面时才重新出现(见图9-10). 全文阅读 »
另一个涉及浮动元素的奇怪的bug是IE 6的重复字符bug的最后一个元素中的最后几个字符会在浮动元素下面重复出现。在某些条件下,一系列浮动元素 见图9一9。 全文阅读 »
margin-left: 0;
}
/*End hide from IE5/Mac*/
文本偏移被修复了,但是现在另一个3像素间隙出现了,这一次是在浮动元素上。为了去掉这个间隙,需要在浮动元素上设置一个负值的3像素右空白边:
/*Hide from IE5-Mac. Only IE一Win sees this.\*/
*html p{
height:1%;
margin一left: 0;
} 全文阅读 »
如果浮动元素是除了图像之外的任何其他东西,那么这个问题已经修复了。但是,如果浮动元素是图像,那么还有最后一个问题需要解决。IE S.xIWin在图像的左右都添加3像素的间隙,而IE 6不改变图像的空白边。因此,需要用另一个招数只在IE S.xIWin上去掉3像素的间隙: 全文阅读 »
人不是万能的,当我们学习 SEO CSS是遇到难题要学会寻求帮助。
请求帮助为自己解决难题
如果创建了基本测试案例,尝试了常用的解决方案,搜索了可能的修复方法,但是仍然无法
找到解决方案,那么要请求帮助。有许多活跃的CSS社区,比如CSS-Discuss (www. Css-discuss.
org/)、Web Standards Group(http://webstandardsgroup.org/)和Webmaster Word CSS forums
(http://tinyurl.com/duh2n)。这些社区中有许多多年从事CSS站点开发的开发人员,因此很
可能有人以前遇到过你的bug并只.知道如何修复它。如果你遇到新的或特别有意思的bug,人们
可能愿意提出建议或者帮助你查明bug的原因。
在请求帮助时要记住,大多数网页开发人员非常忙。 全文阅读 »
知道问题的根源,对于实现正确的解决方案是非常有利的。因为给站点应用CSS样式有许
多方式,最容易的解决方案是干脆回避这个问题。如果空白边导致了问题,那么可以考虑用填充
来代替。如果一种(X)HTML元素组合导致了问题,那么可以考虑换一种组合。
许多CSS bug有描述性非常强的名称。所以在网络上搜索解决方案是相当容易的。例如,如
果你注意到IE将所有浮动元素上的空白边加倍了,那么搜索”Internet Explorer Double Margin
Float Bug”,就会找到解决方案。
如果发现无法回避这个bug,那么可能不得不设法消除症状。这往往涉及寻找一个影响出问题的浏览器的过滤器,并且向这个浏览器提供单独的规则。