元素分类

在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素内联元素(又叫行内元素)内联块状元素

常用的块状元素有:

<div>、<p>、<h1>...<h6>、<ol>、<ul>、<dl>、<table>、<address>、<blockquote> 、<form>

常用的内联元素有:

<a>、<span>、<br>、<i>、<em>、<strong>、<label>、<q>、<var>、<cite>、<code>

常用的内联块状元素有:

<img>、<input>


块级元素

什么是块级元素?在html中<div>、 <p>、<h1>、<form>、<ul> 和 <li>就是块级元素。设置display:block就是将元素显示为块级元素。
语法:
  1. a{display:block;}

块级元素特点:

1、默认每个块级元素都从新的一行开始,并且其后的元素也另起一行。(霸道,一个块级元素独占一行)

2、元素的高度、宽度、行高以及顶和底边距都可设置。

3、元素宽度在不设置的情况下,是它本身父容器的100%(和父元素的宽度一致),除非设定一个宽度。


内联元素

在html中,<span>、<a>、<label>、 <strong> 和<em>就是典型的内联元素行内元素)(inline)元素。当然块状元素也可以通过代码display:inline将元素设置为内联元素
语法:
  1. div{
  2. display:inline;
  3. }
  4. ......
  5. <div>我要变成内联元素</div>

内联元素特点:

1、和其他元素都在一行上;

2、元素的高度、宽度及顶部和底部边距不可设置;

3、元素的宽度就是它包含的文字或图片的宽度,不可改变。


内敛块状元素

内联块状元素(inline-block就是同时具备内联元素、块状元素的特点,代码display:inline-block就是将元素设置为内联块状元素。(css2.1新增),<img>、<input>标签就是这种内联块状标签。

inline-block 元素特点:

1、和其他元素都在一行上;/*内联元素特点*/

2、元素的高度、宽度、行高以及顶和底边距都可设置。/*块状元素特点*/



盒子模型

通过盒子模型,可以帮助我们更方便的理解块级元素的特点
举个栗子:div就可以是一个盒子,放置在里面的p标签就是图中的月饼.

放置在盒子里面的可以是文字,图片,也可以是标签元素


内填充,也就是放在盒子里面的东西和盒子边之间的距离
用专业术语说就是padding!


盒子和盒子之间的距离我们称为盒子的外边距
专业术语称为margin

盒子的边框称为border 

总结:盒子模型主要涉及到了盒子的三个属性内填充(padding),外边距(margin)以及边框(border).那么重点是它们都有四个方向上,下,左,右  top,right,bottom,left.
 
上面的块级标签都具有盒子模型的特点.


边框

盒子模型的边框就是围绕着内容及补白的线,这条线你可以设置它的粗细、样式和颜色(边框三个属性)。
语法:
  1. div{
  2. border:2px solid red;
  3. }
上面的代码实现了把边框设置为粗细2px,样式是实心的,颜色是红色的.这个是缩写的,分开写就是:
  1. div{
  2. border-width:2px;
  3. border-style:solid;
  4. border-color:red;
  5. }
attention:

1、border-style(边框样式)常见样式有:

dashed(虚线)| dotted(点线)| solid(实线)。

2、border-color(边框颜色)中的颜色可设置为十六进制颜色,如:

  1. border-color:#888;//前面的井号不要忘掉。

3、border-width(边框宽度)中的宽度也可以设置为:

thin | medium | thick(但不是很常用),最常还是用象素(px)。



现在有一个问题,如果有想为 p 标签单独设置下边框,而其它三边都不设置边框样式怎么办呢?
语法:
  1. div{border-bottom:1px solid red;}
这样通过CSS控制了只在下面这方向设置边框
当然也可以同时只设置三个方向
  1. border-top:1px solid red;
  2. border-right:1px solid red;
  3. border-left:1px solid red;

宽度和高度

盒模型宽度和高度和我们平常所说的物体的宽度和高度理解是不一样的,css内定义的宽(width)和高(height),指的是填充以里的内容范围。
因此一个元素实际宽度(盒子的宽度)=左边界+左边框+左填充+内容宽度+右填充+右边框+右边界。


当然,元素的高度同理
语法:
  1. div{
  2. width:200px;
  3. padding:20px;
  4. border:1px solid red;
  5. margin:10px;
  6. }
  1. <body>
  2. <div>文本内容</div>
  3. </body>

举个栗子:
这个元素的实际长度就是:0px+1px+20px+198px+20px+1px+0px=240px

填充

元素内容与边框之间是可以设置距离的,称之为“填充”。填充也可分为上、右、下、左(顺时针)。
语法:
  1. div{padding:20px 10px 15px 30px;}
顺序一定不要搞混。top,right,bottom,left
当然也可以分开写
  1. div{
  2. padding-top:20px;
  3. padding-right:10px;
  4. padding-bottom:15px;
  5. padding-left:30px;
  6. }
如果上、右、下、左的填充都为10px
  1. div{padding:10px;}
如果上下填充一样为10px,左右一样为20px
  1. div{padding:10px 20px;}

边界

元素与其它元素之间的距离可以使用边界(margin)来设置。边界也是可分为上、右、下、左
语法:
  1. div{margin:20px 10px 15px 30px;}
当然可以分开写
  1. div{
  2. margin-top:20px;
  3. margin-right:10px;
  4. margin-bottom:15px;
  5. margin-left:30px;
  6. }
如果上右下左的边界都为10px
  1. div{ margin:10px;}
如果上下边界一样为10px,左右一样为20px
  1. div{ margin:10px 20px;}
总结一下:
padding和margin的区别,padding在边框里,margin在边框外。
























HTML+CSS笔记 CSS进阶续集的更多相关文章

  1. HTML+CSS笔记 CSS笔记集合

    HTML+CSS笔记 表格,超链接,图片,表单 涉及内容:表格,超链接,图片,表单 HTML+CSS笔记 CSS入门 涉及内容:简介,优势,语法说明,代码注释,CSS样式位置,不同样式优先级,选择器, ...

  2. HTML+CSS笔记 CSS进阶再续

    CSS的布局模型 清楚了CSS 盒模型的基本概念. 盒模型类型, 我们就可以深入探讨网页布局的基本模型了.布局模型与盒模型一样都是 CSS 最基本. 最核心的概念. 但布局模型是建立在盒模型基础之上, ...

  3. HTML+CSS笔记 CSS进阶

    文字排版 字体 我们可以使用css样式为网页中的文字设置字体.字号.颜色等样式属性. 语法: body{font-family:"宋体";} 这里注意不要设置不常用的字体,因为如果 ...

  4. HTML+CSS笔记 CSS入门续集

    继承 CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代(标签). 语法: p{color:red;} <p> ...

  5. HTML+CSS笔记 CSS中级 一些小技巧

    水平居中 行内元素的水平居中 </a></li> <li><a href="#">2</a></li> &l ...

  6. HTML+CSS笔记 CSS中级 颜色&长度值

    颜色值 在网页中的颜色设置是非常重要,有字体颜色(color).背景颜色(background-color).边框颜色(border)等,设置颜色的方法也有很多种: 1.英文命令颜色 语法: p{co ...

  7. HTML+CSS笔记 CSS中级 缩写入门

    盒子模型代码简写 回忆盒模型时外边距(margin).内边距(padding)和边框(border)设置上下左右四个方向的边距是按照顺时针方向设置的:上右下左. 语法: margin:10px 15p ...

  8. HTML+CSS笔记 CSS入门

    简介: </span>年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的<span>脚本解释程序</span>,作为ABC语言的一种继承. & ...

  9. css笔记 css用法:

    前端框架:AdminLTE  https://almsaeedstudio.com/themes/AdminLTE/index2.html CSS学习教程: http://www.divcss5.co ...

随机推荐

  1. 【OpenCV新手教程之十二】OpenCV边缘检測:Canny算子,Sobel算子,Laplace算子,Scharr滤波器合辑

    本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/25560901 作者:毛星云(浅墨) ...

  2. kettle中调用java类

    kettle中调用java类 有时须要在kettle调用java类,如:验证.查询或自己定义加密等.有时甚至连主要的数据訪问都不那么简单,如获取一个存储文件或使用一个数据库连接,某些数据源可能封装在应 ...

  3. 判断一个指定的Service是否存在的方法

    这是一个判断一个指定的Service是否存在的方法.它被用于监视一个Service是否由于已经运转,如果由于各种原因Service已经被停止了.这是在重新启动指定Service.它被用于一个Appli ...

  4. Server.MapPath(string sFilePath) 报未将对象引用到实例异常

    System.Web.HttpContext.Current.Server.MapPath(string sfilePath)将虚拟路径转换成物理路径.这个必须在aspx或者MVC中Action调用才 ...

  5. Deep Learning(深度学习)相关网站

    Deep Learning(深度学习) ufldl的2个教程(这个没得说,入门绝对的好教程,Ng的,逻辑清晰有练习):一 ufldl的2个教程(这个没得说,入门绝对的好教程,Ng的,逻辑清晰有练习): ...

  6. hibernate 及缓存机制

    hibernate 是一个持久层的框架,经常访问物理数据库,为了降低应用程序访问物理数据库的频次, 从而提升性能, hibernate缓存机制分为: 一类是session 级缓存,二是sessionF ...

  7. hdu4741

    2013年两场网络赛已经过了,之前的现场赛拿了多次铜牌,而这两场网络赛我们都表现得这么水,不由得感慨起来,ACM竞赛生涯就要画上句号了,甚至整个学习生涯中这种纯学术的竞赛都要完了.这两场网络表现得不好 ...

  8. 安卓自定义view_GDI绘图 _2d绘图_canvas绘图

    2014年到2016年 发生了很多事情,如今已成定局,现在想忘掉这些烦恼的事情,找点以前想干没有干的事情来做,塞满大脑就不去想了. 之前,一直想做一款挂机类游戏,各种平台和开发语言都选择过了,从htm ...

  9. justAP1.3.0版发布了

    justAP是一个简单的.易于使用的php运行环境,适合php开发人员使用.与wamp.xampp等不同,它仅仅包含Apache httpd和Php,这也是它名字的来由(justAP=just Apa ...

  10. spoj 10606 Balanced Numbers 数位dp

    题目链接 一个数称为平衡数, 满足他各个数位里面的数, 奇数出现偶数次, 偶数出现奇数次, 求一个范围内的平衡数个数. 用三进制压缩, 一个数没有出现用0表示, 出现奇数次用1表示, 出现偶数次用2表 ...