html中spacer可以替换为什么,HTML_一个比较完美的spacer div技巧,在制作网页的过程中,自适应 - phpStudy...

一个比较完美的spacer div技巧

在制作网页的过程中,自适应问题是经常遇到,而又最让人头疼的,看了好多种解决的方法,但是都不是万能的。今天遇到这个问题,实在让我挠头,借鉴了 Shark的方法,又给了我一个新思路。当时没仔细看LBS的样式表,今天才发现,.clear用的就是这个方法。接下来,我会做个关于“自适应高度”问题的汇总,以便今后遇到问题时候更快解决。

为了解决浮动元素引起父元素无法获得高度的问题,我们一般在子元素的最后加上一个Spacer Div(clear:both)。但是IE和Mozilla对div的解释不同引起一些表现上的差异。

最简单的Spacer:

.HackBox{clear:both;}

IE可以正确地产生预期的效果,但是在Mozilla中不起作用。所以现在很多人是这么用的

.HackBox{ height:0; clear:both;}

然后XHTML中加入一个 ;,如下:

这回IE和Mozilla都起作用了,但是IE并不认 height:0; 这个规则,结果IE中的这个Spacer Div就占了一定的高度,影响布局。

经过N次实验,我发现用下面的方法能比较完美的解决这个问题。

.HackBox{

border-top:1px solid transparent !important;

margin-top:-1px !important;

border-top:0;

margin-top:0;

clear:both;

visibility:hidden;

}

其实IE只需要有clear:both;这一条就可以实现我们的要求。那么下面这两条规则有什么用呢?

border-top:1px solid transparent;

margin-top:-1px;

第一条规则产生1px的一个透明的上边框,第二条将margin-top设置为-1,以抵消这条边框对布局产生的影响。

但是不幸的是IE不支持transparent这个值,它会将这条边框变为黑色-_-

不幸中的万幸是IE这小子还有一个不支持的值,就是!important,IE会忽略这它而选择按后面两条显示,结果就是不显示边框(也就是只有clear:both;起作用了)。而Mozilla却会按!important指出的规则显示。相关阅读:

收藏的js表单验证控制代码大全

ORACLE数据库归档模式的切换

javascript 图片放大缩小功能实现代码

一个不用onmouseup的拖动函数

ASP.net Substitution 页面缓存而部分不缓存的实现方法

两个Javascript小tip资料

过滤SQLProfiler跟踪的输出

FreeBSD中使用QUOTA(磁盘配额)来限制用户空间

用PHP产生动态的影像图

asp.net中执行存储数据操作时数据被自动截取的一种情况

在浏览器上保存数据

状态栏显示欢迎信息的脚本特效

解决jquery .ajax 在IE下卡死问题的解决方法

争论:Ajax技术是否即将没落?

好的,以下是一个简单的 HTML 布局程序,其包括了一个 div,包括 header、slider-images、spacer、多个 article 盒子和一个版权信息: ```html <!DOCTYPE html> <html> <head> <title>HTML 布局程序</title> <style> * { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: Arial, sans-serif; background-color: #F5F5F5; } .container { max-width: 1200px; margin: 0 auto; padding: 20px; } header { background-color: #333; color: #FFF; padding: 20px; text-align: center; } .slider-images { background-image: url('slider-images.jpg'); background-size: cover; height: 400px; } .spacer { height: 50px; } article { background-color: #FFF; border: 1px solid #CCC; padding: 20px; margin-bottom: 20px; } footer { background-color: #333; color: #FFF; padding: 20px; text-align: center; } </style> </head> <body> <div class="container"> <header> <h1>HTML 布局程序</h1> </header> <div class="slider-images"></div> <div class="spacer"></div> <article> <h2>文章标题1</h2> <p>文章内容1</p> </article> <article> <h2>文章标题2</h2> <p>文章内容2</p> </article> <article> <h2>文章标题3</h2> <p>文章内容3</p> </article> <footer> <p>版权所有 © 2021</p> </footer> </div> </body> </html> ``` 这个布局程序div 具有以下特点: - `header` 元素包含了一个标题,在这个布局程序用于显示网站的名称。 - `slider-images` 元素是一个占满整个宽度的元素,用于显示一个幻灯片或者轮播图。 - `spacer` 元素是一个用于分隔不同元素的空白元素,可以根据需要进行调整。 - `article` 元素是一个用于显示文章内容的元素。根据需要可以添加多个 `article` 元素。 - `footer` 元素包含了版权信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值