RSS订阅
PHP程序员站--WWW.PHPERZ.COM  
网站地图
高级搜索
收藏本站
 当前位置:主页 >> 网页制作 >> CSS >> 文章内容
利用css的clear属性实现广告文字环绕效果
来源:互联网  作者:  发布时间:2008-06-13

是否看见大站的广告都是放在内容中间实现文字环绕的呢,一般普通小站广告只能放在内容开头或者结尾,也许大站的cms系统带这个功能吧,我们小站常用cms的基本没这个功能,因为内容标签里面不可能再自动加入一个广告标签,除非你添加文章的时候手动编辑,那不累死。 php程序员之家

我也一直没想到过用css来控制,主要是没想到这个clear属性,今天偶然看到一个介绍,才知道原来实现文字环绕是如此简单。 phperz.com

代码示例: php程序员之家

<div class="news">
    <div style="float:left;height:300px;width:0">一个宽为0的空白层,利用该层的高度控制广告层上下的位置</div>
    <div style="float:left;height:250px;width:250px;clear:left;">广告代码</div>
</div>

www~phperz~com

关键在于clear:left的作用,clear有3个属性:clear:both,clear:left,clear:right,分别表示清除两边,左边,右边的浮动块。在广告层加上clear:left,那么就表示该层相对于空白层来说不浮动了,就往下移动了,太妙了,哈哈。 phperz~com

我们来比较一下: www.phperz.com

<div class="news">
    <div style="float:left;height:300px;width:100px;background:#CCC;">给他加上宽度和背景便于观察效果</div>
    <div style="float:left;height:250px;width:250px;">去掉了清除浮动,你就明白了它的意义</div>
</div>
php程序员之家

如果再加上这样一条: www.phperz.com

<style>.news img,.news table{clear:both;}</style>     //让内容里面的图片和表格不会遮到广告

php程序员之家

很遗憾,上面的测试发现只有ie可行,firefox和opera还有不同的结果,ie的效果是图片遇到广告层自动下移,firefox是不会下移,但是不会遮住广告层,因为广告层在最前,opera是图片不会下移,会遮住广告层,搞笑啊。

php程序员之家

再次改进: www.phperz.com

<style>.news img,.news table{clear:both;position:relative;z-index:-1;}</style>    //让图片和表格自动处于最底层

php程序员站

终于可以了,比较完美了,广告内容环绕的效果就这样搞定了:) phperz.com

//2008-02-29,修改by:何为 phperz.com

忘记加上了
<style>.news{float:left;}</style>

www.phperz.com

有人问要文字上右下都环绕,我改了一下,如下:

www.phperz.com

<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB2312" />
<title>利用css的clear属性搞定gg广告文字环绕 - by:hewei.org</title>
<meta name="keywords" content="css,clear,ggad,文字环绕" />
<meta name="description" content="利用css的clear属性搞定gg广告文字环绕,by:hewei.org" /> www~phperz~com
<body>
phperz~com

<div style="float:left;">
<div style="float:left;height:200px;width:1px;"><!--一个宽为1px的空白层,利用该层的高度控制广告层上下的位置。宽为0就不能控制上下了,原因不知道。--></div>
<div style="float:left;height:250px;width:250px;clear:left;background:#F00;margin:25px 5px 5px 0;"><!--广告代码,firefox和opera还有少量偏差,需要另外调整,就不写了,基本可以。--></div>
 
<p>新闻内容</p> www.phperz.com

</div>
</body>
</html>

www.phperz.com

phperz.com


 相关文章
 
发表评论
全部评论(0条)
 站内搜索
 热门搜索 mysql  基础  adodb  url
高级搜索 网站地图 站长工具 IP查询 收藏本站
 热点文章
 随机推荐
网站首页 | 网站地图 | 高级搜索 | RSS订阅
PHP程序员站 Copyright © 2007,PHPERZ.COM All Rights Reserved 粤ICP备07503606号 联系站长