最近有很多朋友都在问我:“有没有兼容IE和FireFox的图片垂直居中的方法?”。接到问题后我也查阅了网上的相关资料,虽然很多,但总是会出现这样或那样的问题。如:IE和FireFox不兼容,图片大小不确定就不好用等等。所以我决定自己写一个JavaScript的方法来解决这些问题。
首先,使用此方法的先决条件是:图片显示区域的宽、高必须已知,承载各图片对象的总体父对象的ID必须已知,而且需要按原比例缩放图片,使图片不失真。
可用区域的宽高:<div class="item"><img src="..." alt="..." /></div>,如果设置了“item”的宽为80px,高为100px,那么可用区域就是宽为80px,高为100px。如果设置了padding:4px;border:1px #CCC solid,那么增大的只是实际占用的区域,而可用区域还是原来的值不变。...
一个网站如果有新功能或页面上线的话,大多数的网站都会在首页比较醒目的位置加以宣传。但就是这个宣传图片今天给我带来了不大不小的麻烦。
平时在制作页面时都严格遵循Web标准,使页面兼容各浏览器,但今天有一个同事在做测试时使用了带有广告屏蔽功能的傲游浏览器,宣传图片居然被替换成了:“此广告已经被屏蔽”的文字。
我马上想到很可能是设置了Position:absolute属性(即绝对定位,使层脱离页面漂浮在出来)造成的。因为很多网站的漂浮广告层都设置了此功能。当我去掉此功能后问题却依然存在,看来不是这个的问题,那会是哪里出的问题呢?...
因为最近比较忙,所以好久没有上来写文章了。最近有很多朋友问我,能否让标签的背景图片自适应文字的宽度。答案是肯定的,这涉及一个滑动门技术,下面我会以实例向各位朋友介绍这种技术。
目前比较流行的就是两边是圆角,中间是文字的标签。如图:
...
最近有很多网友都在问一个问题:怎么能让多个不固定宽度的对象显示在一行上,如果有对象在剩余空间中显示不下,则换到下一行显示,而不是一个对象分两行显示。
的确,这是令初学者经常困惑的问题,也是经常在设计中用到设置。类似网站模板右侧的标签列表的应用。
下面请看这样一个例子:...
昨天在“CSS森林”技术交流群中与朋友们讨论了对象的最大和最小宽高(即max/min-width/height)在各浏览器下兼容的问题。在讨论到此属性是否适用于IE6下的时候持有分歧。下面我举3个例子来说明一下问题。
一、max / min-width / height属性在IE6下无效
目前,这也是我多年工作以来遇到的第一个,在其他浏览器下有效而IE6下无效,并且没有其他属性可以弥补此功能的问题。在以往的工作中体会到,微软总是在做兼容的同时又不失时机的开发出只有IE才可以支持的属性。而相对于max/min-width/height这样方便的属性而言,使我很不理解的是,微软为什么对此弃而不用。...
IE6下面究竟有多少个BUG恐怕没人会知道了。我也只能发现一个,解决一个,争取可以使大家少走些弯路。
IE6下图片下边有空隙的解决方法网上已经有很多种解决办法了,我今天同大家一起复习一下那些办法,并提供一些新的方法供大家参考。
下面请先看一下出现问题的代码:...
当DIV中是一段文字时一切正常,如果DIV中又包含了设置了浮动属性子DIV时就有可能出现这样的问题。
这种问题在FireFox和IE7中比较常见。在IE6中,就算设置了高度,当内容或子对象超过了范围时,DIV的高度也可以自动增加以适应内容(除非设置了overflow属性限制大小)。但在FireFox和IE7下就不会有这种情况。下面以FireFox来举例说明出现情况的原因及解决办法。
先看这样一个例子:...
很多人都会有在制作网页的时候写注释的习惯。应该说是个好习惯,不仅使自己的思路清晰,极大地减轻了维护的难度,也为其他人的阅读提供了方便。但就是这样的好习惯,有时也会为我们带来一想不到的麻烦,如典型的3px问题。
各浏览器都无一例外的在遇到注释文字时都会忽略,但在IE下还是给我们增添了不小的麻烦。当子对象设置了浮动属性,且宽度等于父对象的宽度,此时在IE下就会出现问题。
请看下面的代码:...
CSS中怎样设置才能使对象中的文字垂直居中于对象,这个问题也是捆扰很多朋友的难题。现在网上的很多代码都做不到浏览器兼容。我把网上有关的方法整理了一下,做了些改动,完全可以兼容各主流浏览器。
下面具体说一下在不同情况下垂直居中的方法。
一、一行文字垂直居中...
最近有很多人问我:在IE6下设置了几个标签的float和margin属性,但左边距明明设的是5px,怎么出来后就变成了10px,而在FireFox下就,没问题。在解释了这是典型的IE6的双倍边距BUG的现象之一后,并帮助那位朋友解决了问题。
其实,IE6的双倍边距BUG也常常是捆扰初学者的一个难题。下面我总结一下此BUG的现象和解决办法。
第一种,也是最常见的一种就是上面说到的,设置了浮动(float)后再设置外边距(margin),外边距就会是原来值的2倍。请看下面的代码:...

