Web开拓从新提及:领略css盒模子
在把握了富厚而强盛的css选择符之后,就具备了将css样式按照必要应用到网页中任何元素的手段。可以或许应用法则了,接下来就必要纯熟把握法则的拟定要领——什么样的属性组合可以或许实现什么样的结果。一样平常的颜色、字体、字号、行高档的配置较量轻易把握,而初学者在应用css的时辰,首要头疼的照旧怎样用css实现伟大的网页机关,从两栏机关、三栏机关,到表单计划等。在机关的时辰,现实上首要是借助元素的宽、高、定位、浮动、边距、边框、间距、配景颜色、配景图片的组合来实现的。而全部这些,都要基于对css盒模子的领略。网上对盒模子的阐述许多,我这里想从适用的角度来谈谈。 网上有两张闻名的图片,别离以2D和3D的情势描写css盒模子: 通过这两张图,一样平常来说对付margin、border、background-color、background-image、padding以及width和height有较直观的相识了。 更为重要的是要相识以下几点:
通过以上这些法则的组合,就能在有限的元素组合下,实现各类修饰性结果。一个简朴的例子如下: 将一个15像素高,颜色为#c00的纯色图片 这是简朴的由配景致与配景图组合实现的结果。按照这样的道理,当我们的文档布局有两层时,譬喻:<a href=”#"><span>笔墨</span></a>,我们可以通过由a元素的配景颜色图片和span元素的配景颜色图片组合,从而获得较为伟大的结果,譬喻:
这个按钮结果,用纯图片很轻易实现,可是用图片实现就谋面对一个题目:不通用。假如要通用,应该把笔墨和配景图片分分开来,同时,因为笔墨有多有少,因此按钮的宽度要是可变的,可是按钮并不是从左到右完全同等的配景,于是不能行使一张图片举办横向平铺,凭证早年的做法,也许会行使一个一行三列的表格,第一个单位格放入左侧的图片,中间的单位格放笔墨僻静铺的配景,右边的单位格放右侧的图片。这种思想转达到了“div+css”机关想维模式下,于是就呈现了这样的布局: Copy to Clipboard![]() 这个布局的呈现,就是为了实现自顺应宽度的按钮,本日依然存在。现实上,行使上面的a+span的根基布局,就能实现这个结果。将中间平铺部门和左侧或右侧的边沿图片组合在一路,一再部门做得宽一些,作为a的配景图片,把另一侧的图片作为span的配景图片包围到a的配景图片上。组合起来看上去就成为一个整体。代码如下: 结果如下:
![]() a span {display:block;line-height:36px;background:url(button.gif) no-repeat left top;color:#fff;text-decoration:none;text-align:center;} 用到的配景图片如下:
这个例子很简朴,可是必要对“配景组合”有足够的领略,可以或许想到应用。而要想到云云应用,起首是对付盒模子中的“background”足够的领略。不然,就只会想到三个div(可能其余元素组合方法),可是因为阁下两个布局完全一样,为了区分它们,只好行使class可能id来标志。这就是我在上一篇中所提到的不须要的class和id。 除了操作display:block让行内元素改变为块元素从而行使盒模子特性外,在浮动的时辰,也常常会用到盒模子的一些特性。再举个例子: 行使浮念头关的时辰,并列泛起的浮动元素中的第一个假如配置与浮动偏向沟通的margin,则IE 6下会呈现margin更加的bug(这就是闻名的IE6浮动边距更加bug)。为了办理这个题目,许多人喜好给一组浮动元素的第一个加上class=”first”,从而可以对这个元素单独应用样式。可能对这一组浮动元素加上display:inline的属性以办理这个bug。 上述两种方法都是没有行使hack选择符可能相同“_margin”这样的非尺度属性的很好的hack方法。可是,假如不长短用margin不行,只要行使padding来取代margin,就能办理这个题目。可能回收与浮动偏向相反的margin也可以。不必要任何特另外hack。这也是在充实领略盒模子的基本上,因为对这个bug的相识,从而在实现样式的时辰直接避开,而不是呈现了之后再用特殊本领去hack。 对盒模子的领略,除了margin、border、padding、width、height五大属性以及两种配景的应用之外,还要相识父级元素与子元素之间的相关。好比父元素没有配置尺寸,而对子元素配置margin-top属性,在某些赏识器下,原来是想针对父元素的边沿配置margin,功效margin被配置到了父元素之外,造成父元素与外部元素的margin。这种环境,将子元素的margin改成父元素的padding,也可以在不改变示意的环境下实现沟通的结果。 要想通过对盒模子特性的充实应用来镌汰css中的hack行使,可能以更简捷的代码实现更伟大的结果,必要对盒模子不绝地实行和总结。这是《css势力巨子指南》之类的经典巨著也没法教给你的。 只有越领略盒模子,才气越好地操作浮动和定位来实现伟大、准确的机关。关于浮动的题目,下一次我们再一路来相识一下。 转自:刀刀博客 URL:http://wukangrui.com (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |