《精通CSS》定位

  定位部分包含了两个模型:视觉格式化模型和定位模型。理解这两个模型的细微差异是非常重要的,因为它们一起控制着如何在页面上布置每个元素。

  /**********视觉格式化模型***************/

  p、h1、div等元素常常被称为块级元素,与此相反,strong和span等元素称为行内元素。块级元素显示为一块内容,即“块框”,它们显示为一块内容。行内元素显示在一行上。

  display属性可以改变元素的显示类型,通过将display设置为block,可以让行内元素表现的像块级元素一样,然而将display设置为none,让生成的元素根本没有框,这样,这个框及其内容就不再显示,不占用文档中的空间。

  CSS中有三种基本的定位机制:普通流、浮动和绝对定位。除非专门制定,否则所有框都在普通流中定位。

  块级框从上到下一个接一个的排列,框之间的垂直距离由框的垂直空白边计算出来。

  行内框在一行中水平布置。可以使用水平填充、边框和空白边调整它们的水平间距(如下图)。但是垂直填充、边框和空白边不会影响行内框的高度。由一行形成的水平框称为行框,行框的高度总是足以容纳它包含的所有行内框。但是,设置行高可以增加这个框的高度。

  框可以按照(X)HTML元素的嵌套方式包含其他框。大多数框由显示定义的元素组成。但是,在一中情况下,即使没有进行显示定义,也会创建块级元素。这种情况就是把一些文本添加到一个块级框(比如div)的开头。即使没有把这些文本定义为段落,它也会被当做段落对待:

1 <div>
2 some text
3 <p>Some more text</p>
4 </div>

  这种情况下,这个框称为无名块框,因为它不与专门定义的元素相关联。

  块级元素内的文本行也会发生类似的情况,假设有一个包含三行文本的段落。每行文本形成一个无名行框。

  /**********视觉格式化模型***************/

  /**********相对定位***************/

  相对定位是一个非常容易掌握的概念,如果对一个元素进行相对定位,它将出现在它所出现的位置上。然后,可以通过设置垂直或水平位置,让这个元素“相对于”它的起点开始移动。如果将top设成20像素,那么框将出现在原位置顶部的下面20像素的地方。如果将left设成20像素,那么会在元素左边创建20像素的空间,也就是将元素向右移动。如图

  在使用相对定位时,无论是否进行移动,元素仍然占据原来的空间。因此,移动元素会导致它覆盖其他框。

  /**********相对定位***************/

《精通CSS》定位,布布扣,bubuko.com

时间: 2024-12-23 13:27:06

《精通CSS》定位的相关文章

读《精通CSS:高级Web标准解决方案》

因为最近在看<精通CSS:高级Web标准解决方案>,做了一些记录. 因为很多开发人员对于XHTML2的开发不满,于是出现了WHATWG和W3C的分裂,WHATWG决定开发自己的规范,也就是HTML5,而W3C的XHTML2标准已被放弃,HTML5成为了W3C的正式标准.XHTML和HTML的区别就是XHTML严格遵守XML编码规定,浏览器会依据文档的MIME类型来解析文档,如果不遵循规范会导致错误,而HTML却是很宽松的. Doctype类型和浏览器模式,DTD(文档定义类型)是一组机器可读的

《精通CSS:高级Web标准解决方案》学习笔记01

对我来说,CSS算得上是一个很难的东西.因为它不像JavaScript那么有趣,对记忆的要求太高,而我对浏览器兼容性.各种CSS Hack真的一点都不感冒.琐碎的.非理论化的知识,真的很烦人呐~ 鉴于国产CSS书籍基本都是辣鸡的现状,我在半年前动用某工作室的购书资金采购了一些技术书籍,这本广受好评的<精通CSS>也在其中.但是在阅读过后我深深的感觉到,如果说CSS本来已经是一种很琐碎的布局知识集合的话,那这本书只能说是更加琐碎了,因为这只是一本纯纯的经验分享.而且随着前端技术的快速发展,明显能

《精通CSS》框模型

目前正在阅读<精通CSS>的电子书,记下读书过程中的理解和不解,以便以后查阅. 第二章 要掌握的三个最重要的CSS概念是浮动.定位和框模型.     框模型是CSS的基石之一,它制定元素如何显示以及如何相互交互.页面上的每个元素被看做一个矩形框,这个框由元素的内容.填充.边框和空白边组成. 在CSS中,width和height指的是内容区域的宽度和高度.增加填充.边框和空白边不会影响内容区域的尺寸,但是会增加元素框的总尺寸.但是在IE 6和其之前的版本中,会将填充(padding)视为内容的一

精通CSS:高级Web标准解决方式(第2版)

精通CSS:高级Web标准解决方式(第2版) 跳转至: 导航. 搜索 层叠重要度:(也就是说.用户!important能够覆盖inline style) !important.用户>作者.最后是浏览器/用户代理 规则特殊性(次序)的计算:a,b,c,d 假设同样.后定义的优先 假设是inline style,a=1 b=ID选择器(#id)的个数 c=类.伪类.属性选择器的个数 d=类型.伪元素选择器的个数 => 大站点复杂内容情况下怎样管理规则次序??? @import比link慢? p41

CSS定位

一.属性定位(百度首页) 1.通过id定位:(#代表id) driver.find_element_by_css_selector("#kw").send_keys("selenium") 2.通过class定位:(.代表class) driver,find_element_by_css_selector(".s_ipt").send_keys("selenium") 3.通过标签定位:(不推荐) driver.find_el

CSS 定位 (Positioning) CSS 外边距合并 CSS 相对定位

CSS 定位 (Positioning) 属性允许你对元素进行定位. CSS 定位和浮动 CSS 为定位和浮动提供了一些属性,利用这些属性,可以建立列式布局,将布局的一部分与另一部分重叠,还可以完成多年来通常需要使用多个表格才能完成的任务. 定位的基本思想很简单,它允许你定义元素框相对于其正常位置应该出现的位置,或者相对于父元素.另一个元素甚至浏览器窗口本身的位置.显然,这个功能非常强大,也很让人吃惊.要知道,用户代理对 CSS2 中定位的支持远胜于对其它方面的支持,对此不应感到奇怪. 另一方面

CSS 定位和选择器

CSS 定位 CSS 定位 (Positioning) 属性允许你对元素进行定位. CSS 为定位和浮动提供了一些属性,利用这些属性,可以建立列式布局,将布局的一部分与另一部分重叠,还可以完成多年来通常需要使用多个表格才能完成的任务. 一切皆为框 div.h1 或 p 元素常常被称为块级元素.这意味着这些元素显示为一块内容,即“块框”.与之相反,span 和 strong 等元素称为“行内元素”,这是因为它们的内容显示在行中,即“行内框”. 使用 display 属性改变生成的框的类型.这意味着

web前端css定位position和浮动float

最近做了几个项目:配资公司,ecmal商城等,客户对前台要求都很高.所以,今天来谈谈css的基础,以及核心,定位问题. div.h1或p元素常常被称为块级元素.这意味着这些元素显示为一块内容,即“块框”.与之相反,span和h3等元素称为“行内元素”,这是因为它们的内容显示在行中,即“行内框”. 在这种情况下,这个框称为无名块框,因为它不与专门定义的元素相关联. 块级元素的文本行也会发生类似的情况.假设有一个包含三行文本的段落.每行文本形成一个无名框.无法直接对无名块或行框应用样式,因为没有可以

2.4 CSS定位

1. CSS定位机制 普通流  浮动  绝对布局 2. CSS position 属性 static        left right top bottom属性无效 relative absolute fixed         滚动时固定不动 3. 覆盖顺序 z-index 值越大越在上面 4. 浮动 float = left, right, none, inherit(父级继承) clear去掉浮动属性