在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
视觉类型的媒体根据CSS的视觉格式化模型(Visual formatting model)的规则来处理文档树中的元素,从而将(X)HTML转化成制作者设计的样子。
如何生成元素框; 文档树中的元素都产生矩形的框(Box),这些框影响了元素内容之间的距离、元素内容的位置、背景图片的位置等等。而浏览器根据视觉格式化模型(Visual formatting model)来将这些框布局成访问者看到的样子。 视觉格式化模型中也有“布局(layout)”的概念,但是这个与页面设计经常用到的类似“3行2列”或者“3行3列”中的“排版布局”的概念不同,视觉格式化模型中的“布局”是指每个元素该如何来显示。 CSS 2.1中,一个控制框的布局可以根据三种定位方案: 常规流向。CSS 2.1中,常规流向包含块框的块格式化,行内框的行内格式化,块框或行内框的相对定位,以及插入框的定位。 框模型(Box model,也译作“盒模型”)是CSS非常重要的概念,也是比较抽象的概念。 文档树中的元素都产生矩形的框(Box),这些框影响了元素内容之间的距离、元素内容的位置、背景图片的位置等等。而浏览器根据视觉格式化模型(Visual formatting model)来将这些框布局成访问者看到的样子。 因此,要掌握使用CSS布局的技巧,就需要深入了解框模型和视觉格式化模型的原理。 浏览器内显示的元素都可以看作是一个装了东西的矩形的盒子,这些矩形的盒子嵌套、叠加或者并列在一起,形成了页面。 提示:“box model”往往被译为“盒模型”。但是盒子是具有厚度的,也就是说盒子是三维的,而框则没有厚度,是二维的,因此本书采用了“框模型”这个译法。 图1显示了每一个元素的“框(Box)”由几部分组成: 内容(content) 由图2大家可以发现,1个元素所占的区域其实是由几个矩形框组成:元素的内容框、补白形成的框、元素的边框以及边距形成的框。这些框的边缘又有如下定义: 元素内容框的边缘,称为“内容边(content edge)”或“内边(inner edge)”,4条内容边形成“内容框(content box)”。 产生框的元素是否设定了width属性或height属性; CSS Code复制内容到剪贴板
由图3和图4,我们可以发现: 元素的框宽度 = 左边距(margin-left) + 左边框宽(border-left-width) + 左补白(padding-left) + 内容宽度(width) + 右补白(padding-right) + 右边框宽(border-right-width) + 右边距(margin-right) 在IE 5.5及更早的版本,以及在怪异模式中的IE 6.0/7.0中,会错误地将框模型理解为: width = border-left + padding-left + 内容宽度 + padding-right + border-right 例如下列代码: XML/HTML Code复制内容到剪贴板
则div的框宽度应为360px(10px + 5px + 15px + 300px + 15px + 5px +10px),而在IE的错误框模型中,框的宽度为320px(10px + 300px +10px),实际的内容宽度为260px(300px – 15px*2 – 5px*2)。 因此会造成元素尺寸显示的不正确。 提示:在CSS 3中,制作者可以通过“box-sizing ”属性来指定width和height的值应用在内容框或者边框框上。 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论