第七章  margin、padding和border

1.盒模型:四个属性:

(1)padding:内容与其边框线之间的空间。

(2)border:盒子周围的直线

(3)background-color:用来填充边框内部空间的,包括padding区域。

(4)margin:一个标签和另一个标签之间的间隔。

2.padding和margin的区别:padding是在内容和边框之间增加空间。避免内容被硬塞在方框里面,它还包括背景区域,因此padding占用的空间也可以为空白的内容。而margin则是在元素之间增加空白。

3.边距冲突:

当元素的bottom margin碰到另一个元素的top margin时,浏览器不是把这两个边距相加,而是应用它们中较大的那一个。

4.用margin负值消除空格:

margin负值代表移除空间。

5.块级盒子和行内盒子:

CSS有两种不同的盒子类型:block box(块级盒子)和inline box(行内盒子),它们分别对应于两个标签类型:块级标签和行内标签。块级标签在其前后会产生空格,行内标签在其前后不会产生空格。

6.行内元素只能设置left/right padding或margin,无法设置top/bottom padding或margin,除了<img>标签之外。display 属性可以让块级元素像行内元素那样显示,也可以让行内元素像块级元素那样显示。

7.添加边框:边框是环绕在元素周围的直线。每个border都通过color、width、style三个属性控制。样式还可以控制边框线的类型:solid(实现)dashed(虚线)等。

8.添加圆角:border-radius属性可以给盒子添加圆角。只写一个值时,它就会将这个值应用给一个元素的所有4个角,写四个值时,它会从左上角开始按顺时针应用于各个角。有些浏览器不支持border-radius属性,因此需要加上供应商前缀:-webkit-用于chrome、-moz-用于Firefox、-o-用于Opera、-ms-用于IE。

9.添加阴影:

box-shadow属性可以给元素的边界添加阴影。语法:box-shadow:-4px 6px 8px #000000;

第一个值为水平偏移量,这个值会将阴影移到元素的左边或者右边。正值是右边,负值是左边。第二个值为垂直偏移量,阴影的位置在元素的上方或者下方。正值是下方,负值是上方。第三个值是阴影的半径。决定阴影的模糊度和宽度。值为0时完全不模糊。第四个值是阴影的颜色。box-shadow属性中包括两个可选的值:inset关键字和阴影的尺寸。关键字inset告诉浏览器要将阴影画在方框内部,还可以添加一个阴影的尺寸作为第4个值。阴影的尺寸会将阴影扩展指定的量。可以在一个样式中添加多个阴影,用逗号隔开。

例如:box-shadow:10px 5px 8px #ff00ff,-5px -10px 20px 5px rgb(0,33,255);

10.确定高度和宽度:

height和width属性时构成部分CSS盒模型的另外两个CSS属性,它们十分适用于给对象设置尺寸。盒子的实际宽度和高度是margin、border、padding、width属性值的总和。假如你设置了下列属性:

width:100px;

padding:15px;

border-width:5px;

margin:10px;

浏览器分配给盒子的宽度是160px。left/right margin为20px、left/right border为10px、left/right padding为30px,再加上宽度值100px。

11.height属性适合用来控制包含图片的div的高度以及横幅区域的设置。用来控制文本时要注意溢出。

12.用overflow控制溢出文本:overflow用4个关键字来控制溢出盒子边沿的那部分内容改如何显示:

(1)visible:这是浏览器通常的做法。

(2)scroll:添加滚动条。

(3)auto:要使滚动条变成可选,就用auto选项。

(4)hidden:隐藏任何超出盒子的那部分内容。

13.高度和宽度的最大化和最小化:

(1)max-width属性:用于设置元素的最大宽度。

(2)max-height属性:设置最大高度。

(3)min-width属性:设置元素的最小宽度。

(4)min-height属性:设置元素的最小高度。

14.浮动包围内容:float属性可以把元素移到左边或者右边。float属性值有三种:left、right、none。浮动标签的HTML代码必须出现在任何包围浮动元素的内容之前。浏览器会包围浮动元素周围的文本但是不会包围边框或者背景,消除背景元素在浮动元素之下的方法有两种:(1)给设置了浮动下方跑动的背景或边框的样式添加一条规则:overf:hidden。(2)在浮动元素周围添加边框:即设置足够粗的边框。

15.停止浮动:clear属性会指示元素不要包围浮动项目。clear属性接受以下选项:left样式将落至左浮动元素的下方、right:强迫样式落至右浮动对象的下方、both:强迫样式落至左浮动和右浮动元素的下方、none:完全关闭清楚属性。

CSS3秘笈:第七章的更多相关文章

  1. CSS3秘笈:第九章

    1.链接状态:大部分浏览器支持4中基本的链接状态:未访问的链接.已访问的链接.访问者的鼠标正悬停在上方的链接.正被单击的链接.这些状态的4个对应伪类选择器分别是:link.:visited.:hove ...

  2. CSS3秘笈:第一章

    1.<div>和<span>标签: <div>和<span>标签:就像是一个空的容器,我们要往里面填充内容.一个div就是一个块,意味着它的前后都要空一 ...

  3. CSS3秘笈:第二章

    1.一个样式由两个元素组成:浏览器对其设置格式的网页元素(选择器,selector)和实际的格式化指令(声明块,declaration block). 2.简单的样式也包含了以下几个元素: (1)Se ...

  4. CSS3秘笈第三版涵盖HTML5学习笔记1~5章

    第一部分----CSS基础知识 第1章,CSS需要的HTML HTML越简单,对搜索引擎越友好 div是块级元素,span是行内元素 <section>标签包含一组相关的内容,就像一本书中 ...

  5. CSS3秘笈复习:第七章

    1.边距冲突: 当元素的bottom margin碰到另一个元素的top margin可能会产生一些怪异的计算,浏览器会忽略小的那个值而使用大的值. 2.边距折叠: 假设要在警告框里插入一个标题,并且 ...

  6. CSS3秘笈第三版涵盖HTML5学习笔记13~17章

    第13章,构建基于浮动的布局 使用的是float(浮动)属性 注:float:none值将取消所有浮动,通常只用来取消元素中已经应用的浮动. 切记:不需要给正文的div设计宽度,即使设计成固定宽度也不 ...

  7. CSS3秘笈第三版涵盖HTML5学习笔记9~12章

    第9章,装饰网站导航 限制访问,处于隐私方面考虑,浏览器已经开始限制可以对伪类:visited应用哪些CSS属性了.其中包括对已访问过的链接定义color.background-color.borde ...

  8. CSS3秘笈第三版涵盖HTML5学习笔记6~8章

    第二部分----CSS实用技术 第6章,文本格式化 指定备用字体: font-family:Arial,Helvetica,sans-serif; 当访问者没有安装第一种字体时,浏览器会在列表中继续往 ...

  9. CSS3秘笈复习:十三章&十四章&十五章&十六章&十七章

    第十三章 1.在使用浮动时,源代码的顺序非常重要.浮动元素的HTML必须处在要包围它的元素的HTML之前. 2.清楚浮动: (1).在外围div的底部添加一个清除元素:clear属性可以防止元素包围浮 ...

随机推荐

  1. OpenCV程序在Debug时出现「PDB文件无法加载」的一个解决方法

    这几天毕设要用到OpenCV,按照网上的教程来搭建开发环境. 用的是OpenCV 3.0 beta + Visual Studio Community 2013.我的系统64位是Win 8.1,但在加 ...

  2. python如何保证多个线程同时修改共享对象时不出错!

    import threadingimport timenumber = 0lock = threading.RLock() #是Lock()的升级版,用Rlock()即可def run(num): l ...

  3. FR javascript 时间设置上个月最后一天后当月最后一天

    //设置上月最后一天 var date1 =new Date(); date1.setDate(1); //first day; date1.setMonth(date1.getMonth()); / ...

  4. JUit——(三)JUnit核心对象(测试、测试类、Suit和Runner)

    JUnit的核心对象:测试.测试类.测试集(Suite).测试运行器 1. 测试: @Test注释的.公共的.不带有任何参数.并且返回void类型的方法 2. 测试类: 公共的,包含对应类的测试方法的 ...

  5. 第一百一十四节,JavaScript文档对象,DOM进阶

    JavaScript文档对象,DOM进阶 学习要点: 1.DOM类型 2.DOM扩展 3.DOM操作内容 DOM自身存在很多类型,在DOM基础课程中大部分都有所接触,比如Element类型:表示的是元 ...

  6. 【Python】@property的用法

    设想我们要给一个student()类的一个实例s,添加一个score的属性,比如: s.score=999999 这个值明显是不合理的,但是它却是可行的,怎么能改变这种情况?我们能想到的就是用类方法 ...

  7. IIS7部署MVC站点后,打开无法正常跳转到首页

    产品拿到安装包后想在本地安装测试一下,但是管理工具里没有IIS. 后来在windows功能里添加iis服务. 添加后成功安装. 但是第一次打开时,页面提示要“启用目录浏览”. 启用后,打开的却是站点目 ...

  8. MySQL Replicationation基础

    摘要 一.MySQL Replication 介绍MySQL Replication的基本概念,摘自于Mysql官网 二.Replication Configuration 2.1 Basic Ste ...

  9. HDU 2064 汉诺塔III(递归)

    题目链接 Problem Description 约19世纪末,在欧州的商店中出售一种智力玩具,在一块铜板上有三根杆,最左边的杆上自上而下.由小到大顺序串着由64个圆盘构成的塔.目的是将最左边杆上的盘 ...

  10. 自己写的POIUtil,主要解决从不同的HSSFWorkbook复制sheet以及根据单元格插入图片等

    复制sheet的原始代码网上找的,但是小问题很多,然后自己动手改了一下: 根据单元格信息动态插入图片,如果单元格有文字,图片的位置会在文字之后,如果同样的位置已有图片则会往下插入. import or ...