当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > Firefox和IE通用的三则网站重构实用技巧

CSS样式表
css ID类和class类的长命名与短命名
CSS background-position的使用说明详解
利用CSS定位背景图片 background-position
CSS 多图片融合背景定位的应用于优缺点分析
CSS实现的图片宽高自适应固定边框
css 背景图片定位在菜单效果中的应用实例
CSS 速记口诀 可以解决一些常见问题
CSS 多浏览器兼容性问题及解决方案
css 行级元素在多浏览器下的宽度问题 与解决方法
IE下行框高度的问题
CSS 实现的图片宽高自适应固定边框
css的核心内容 标准流、盒子模型、浮动、定位等分析
CSS 超出隐藏实现限制字数的功能代码(多浏览器)
Div+CSS 布局入门教程之二 构建网站
CSS 网页布局中文排版的9则技巧
CSS网页布局25个实用小技巧
网页制作 默认Web字体样式
IE与Firefox的CSS兼容大全 推荐
css 非表格垂直对齐效果代码
css cursor 的可选值(鼠标的各种样式)

CSS样式表 中的 Firefox和IE通用的三则网站重构实用技巧


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-09   浏览: 167 ::
收藏到网摘: n/a

   使用zoom、overflow解决IE6、IE7、FF下嵌套容器清除浮动问题

  我们经常遇到一个容器外面套一个边框,边框高度随容器高度变化,但是当边框内容器设置了浮动属性后,外框就不跟随变化,这时就需要清除浮动。给外边框容器加上overflow:auto的属性,可以解决IE7和FF下的清除浮动问题,但是IE6下不生效,我们需要使用IE的一个私有属性zoom使IE5.5+的浏览器达到外框跟随变化的效果。

  需要注意的几个细节问题,例如我们建立一个样式为text的容器,宽200象素,高度自适应,外面包一个样式为content的10象素的外框。(如图1)

Firefox和IE通用的三则网站重构实用技巧_软晨学习网ruanchen.com转载

图1

      代码如下:

<style type="text/css">
.content{ border:10px solid #F00;}
.text{ width:200px; height:300px; background:#000;}
</style>

<body bgcolor="#FFFFFF">
<div class="content">
    <div class="text"></div>
</div>
</body>

  如果我们为text容器设置了左浮动的属性,并将content容器定义了200象素的宽,就需要为content容器增加overflow:auto属性,以清除text容器的浮动。否则FF下则会出现问题。(如图2)

Firefox和IE通用的三则网站重构实用技巧_软晨学习网ruanchen.com转载

图2

      代码如下:

<style type="text/css">
.content{ border:10px solid #F00; width:200px; overflow:auto;}
.text{ width:200px; height:300px; background:#000; float:left;}
</style>

<body bgcolor="#FFFFFF">
<div class="content">
    <div class="text"></div>
</div>
</body>

  除此之外还有一种比较特殊的情况,如果在不设定content宽度的情况下,仅仅使用overflow:auto,在IE5.5+下是无法实现清除浮动的效果的。为此我们需要使用一个IE的私有属性zoom来使IE下达到所需效果。

      代码如下:

<style type="text/css">
.content{ border:10px solid #F00; overflow:auto; zoom:1;}
.text{ width:200px; height:300px; background:#000; float:left;}
</style>

<body bgcolor="#FFFFFF">
<div class="content">
    <div class="text"></div>
</div>
</body>

      使用链接样式模拟图片热区

  如果为一副不规则图片添加区域链接,很多朋友都会考虑使用Dreamweaver的热区功能,其实如果需要添加链接的区域是规则的矩形形状,我们可以使用样式表控制链接的样式来模拟热区的效果,代码少,易于维护和修改。
  例如我们要在一张400×100的背景图片上建立一个100×50大小和200×80大小的矩形热区。(如图3)

Firefox和IE通用的三则网站重构实用技巧_软晨学习网ruanchen.com转载

图3
      代码如下:

<style type="text/css">
#banner{ width:400px; height:100px; background:#959595;}
#banner a{ float:left;}
#banner a.link1{ width:100px; height:50px; background:#F00; margin:20px 0 0 20px;}
#banner a.link2{ width:200px; height:80px; background:#F00; margin:10px 0 0 50px;}
</style>

<body bgcolor="#FFFFFF">
<div id="banner">
    <a href="#" class="link1"></a>
    <a href="#" class="link2"></a>
</div>
</body>

  通过这种将链接变成块属性的方法,可以方便的定义矩形热区,并通过样式控制每个区域的位置,并且代码清晰,修改方便。
 
      使用列表实现图片排版自动更新排列

  在制作图片站点的时候,经常会用到图片排版,并且最新更新的图片显示在最前面,后面依次类推。使用表格可以实现这样的效果,但是略显复杂,下面分享一下我使用列表完成的效果。

  图片尺寸为100×80象素,每行3列。(如图4)

Firefox和IE通用的三则网站重构实用技巧_软晨学习网ruanchen.com转载

图4
      代码如下:

<style type="text/css">
ul{ margin:0; padding:0 0 20px 0; list-style:none; width:380px; overflow:auto; background:#959595;}
ul li{ float:left; display:inline; width:100px; height:80px; background:#F00; margin:20px 0 0 20px;}
</style>

<body bgcolor="#FFFFFF">
<ul>
    <li>4</li>
    <li>3</li>
    <li>2</li>
    <li>1</li>
</ul>
</body>

  这样只要每次增加一行列表,就可以完成图片的自动更新排版。这里需要大家注意两点:

  一、和第一个例子讲的一样,<li>使用了浮动属性,所以<ul>需要使用overflow:auto来清除浮动;

  二、示例代码中对<li>使用了display:inline属性,是为了解决IE6下左浮动双倍边距的bug,这个小技巧希望朋友们注意。
 
  注:以上示例在IE6、IE7、FireFox浏览器下测试通过。