第七章  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. MPlayerX播放视频屏幕中间有图标遮挡的解决办法

    问题如下: 解决办法: 在应用程序文件夹中找到MPlayerX,鼠标右击应用图标,在右键菜单中选择"显示包内容",进入如下目录:Contents->Resources,找到l ...

  2. linux开发

    linux开发资料 01 02 03 04 05 06 07 08 09 10 11 1 2 3 4 5 21 22 23 24 25

  3. Weex-语法笔记 一

    p.p1 { margin: 0.0px 0.0px 2.0px 0.0px; font: 14.0px "PingFang SC Semibold"; color: #45454 ...

  4. win10锁屏壁纸路径

    C:\Users\ShanYu\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalS ...

  5. 安卓Activity、service是否处于同一进程

    Activity与Service是否处于同一进程?   1)默认情况下(不写android:process的时候),此时同一个应用程序的所有组建位于同一进程里,Activity与service也处于同 ...

  6. 数据库DateTime类型为空的处理

    一,写一个辅助类,将该方法设为静态,先装换为object,在转为DateTime,返回DateTime public class DateTimeHelper { public static Date ...

  7. MVC中的Startup.Auth.cs、BundleConfig.cs、FilterConfig.cs和RouteConfig.cs

    一.MVC中的Startup.Auth.cs.BundleConfig.cs.FilterConfig.cs和RouteConfig.cs四个文件在app_start中 <1>Bundle ...

  8. Vue - 使用命令行搭建单页面应用

    使用命令行搭建单页面应用 我们来看一下最后完成的效果: 大纲 1. 下载 node, git, npm 2. 使用命令行安装一个项目 一. 下载工具 node , git  的下载大家可以去官网自行下 ...

  9. sql新建数据库表,及添加多个主键

    create table tb_Modules(module_Id int identity(1,1) primary key,  (自增)model_Name varchar(50) not nul ...

  10. 二、ASP.NET MVC Controller 控制器(一:深入解析控制器运行原理)

    阅读目录: 1.开篇介绍 2.ASP.NETMVC Controller 控制器的入口(Controller的执行流程) 3.ASP.NETMVC Controller 控制器的入口(Controll ...