CSS盒子模型

 
在页面上,我们要控制元素的位置,比如:写作文一样,开头的两个字会空两个格子(这是在学校语文作文一样),其后就不会空出来,还有,一段文字后面跟着一张图,它们距离太近,不好看,我们要移动图片,让它里文字远一点点,这时候呢,我们就可以运用到盒子的属性:内边距、外边距。
 
内边距:
 
<div>我是内边距</div>
 
我们先测试以上代码,在页面里按下 “F12”键,会弹出一个框,即是“查看源码”,我们可以看到html、css、js等等源代码,它们是以网页呈现出来的内容的格式出来的,嗯...听不懂的同学,后期会懂的,因为现在我们不需要太资深,慢慢来。 按下F12后(它可能是呈右侧或下方显示),同学们可以根据自己喜欢,调整,老师用的测试下方显示,在最右侧 有三个竖着的点,点击它就可以切换显示方位。那么我们找到了这个div元素之后,在最右下方,可以看见一个盒子,里面是一个虚线和实实线等组成的,我们可以看到,最里面,会显示两个数字相乘,因为老师电脑分辨率是1920,而这个div没有设置高度,因为内容而出现的高度是21px,所以我两个数字则显示的是:1920*21。
在它的外围,有一个padding,它的意思就是“内边距”,内边距是什么呢?我们用代码来测试效果,再来解释:
 
<div style="padding-left: 50px;">我是内边距</div>
 
这里我们给了div背景色,是因为好看出效果,不然页面白色,它本身无色,就不容易看出来效果了。这里的paddin-left的意思是,内边距距离左侧,值 50px。这里老师提醒同学们,每一个键值对 写完,都要跟一个分号(不是中文哦),分号如同是它的结束标语一样,就能分离所有的属性和值,否则会报错,没有效果。
上面这个代码,我们可以清楚的看到,div背景色变成浅灰色,然后内容距离左侧50px了,这就是内边距,是元素的内侧发生了移动改变,元素本身是不会发生改变的。
 
外边距:
 
<div style="margin-left: 50px;">我是外边距哟</div>
 
因为有背景色,所以我们可以很容易区分出,外边距和内边距的区别。在页面上,内容部分依旧是距离了浏览器左侧50px,没有发生改变,但是div的背景色是不是发生了改变,它也跟着距离浏览器左侧50px了,这就是外边距,在按下F12里,看盒子,它会在外边距 margin里写上50这个数字。外边距,它是存在 在元素外侧的,如同是管理整个元素,所以它发生改变,整个元素就会改变,而内容确实元素里的,明白了吗
 
这里我们用到的是margin(pdding)-left 意思是距离左侧,那么有左侧,也就应该有上下右,这里写一下,效果同学们自己测试咯:
margin-top  外边距 距离高          padding-left 内边距 距离高
margin-right  外边距 距离右侧     padding-right  内边距 距离右侧
margin-bottom  外边距 距离下     padding-bottom  内边距 距离下
margin-left  外边距 距离左侧        padding-left  内边距 距离左侧
 
最为明显和常用的,是top和left,调整距离,而right和bottom,很多同学可能不明白,如果你给div设置了margin-bottom 下边距,它本身不会发生改变,而是会影响到下一个元素,下一个元素就会距离它 50个px或者其他值,right也是一样,因为我们代码都是从上往下,从左往右执行,写两个元素比较一下就可以了。
 
我们在说一下,如果margin或者padding后面不跟四个方向,我们还可以这样写:
 
<div style="padding: 10px 20px 30px 40px;">内边距测试</div>
 
它会有四个值:值的顺序:top  right  bottom  left
如果换成三个值:值就会影响:第一个值:top   第二个值:left(right)  第三个值:bottom
如果换成两个值:值就会影响:第一个值:top(bottom)  第二个值;left(right)
如果换成一个值:就会直接影响四个:top  right  bottom  left
 
margin和padding两个属性值都是一样的,只是作用不一样罢了,所以懂得其中一个,另一个几乎就没问题了。
 
我们在说说,如果以上代码,将div改成span这种行级元素,会怎么样呢?老师这里给同学们提示一下,行级元素,它不能跨行,所以设置它的top和bottom是没有作用的,left和right是有作用的哦。
 
最后来说一下盒子里还有一个border(边框)
 
之前我们用table做表格,很难看,虽然是上一个tr td 对准下一个tr td,没有样式不好看,但是没有边框也不好区别,有了边框的话,使用者就会更加清晰。
 
我们来演示下给table表格加边框,其他元素也可以加边框哦,同学可以多玩玩:
 
<table>
<tr>
<th>编号</th>
<th>姓名</th>
<th>QQ</th>
</tr>
<tr>
<td>1</td>
<td>龙枫</td>
<td>563292416</td>
</tr>
<tr>
<td>2</td>
<td>過來寳貝</td>
<td>563292416</td>
</tr>
</table>
 
以上是最基本的table表格,什么都没有,大家会发现,它是根据左对齐的,所以我们不光要知道它的边框,还要清楚它的对齐方式,这里老师写的比较简单,如果是大数据,类别比较多,那就会比较乱,所以加边框是很有必要的,我们来试试效果:
 
<table style="border: 1px solid #dedede;">
<tr>
<th>编号</th>
<th>姓名</th>
<th>QQ</th>
</tr>
<tr>
<td>1</td>
<td>龙枫</td>
<td>563292416</td>
</tr>
<tr>
<td>2</td>
<td>過來寳貝</td>
<td>563292416</td>
</tr>
</table>
 
这样的话,就给table表格加了一个边框,但是我们重点不是给它加,而是给表单里的tr td加,这样的话,才能区分内容块,那么我们再改动一下添加一个,用内联来写:
 
td,th{
border: 1px solid #dedede;
}
 
这句话的意思是说,td和th两个元素,它们的边框border,值为:1px(大小) solid(实线) #dedede(颜色)。
那么我们这样做了之后,大家会发现,它的边框就是一块一块的,也不好看,这时候我们就要用到table的属性:
 
<table cellspacing="0">
 
cellspacing它的意思是,把表格里的每一个单元(td,th)间距设置为0,它默认情况下不是0,所以才有间距,我们设置成0它就会没有间距了,就不再是一小块的形式分离开一样,而是贴在一起。
还有一个属性:cellpadding这里面能看到padding内边距的意思,它就是单元(td/th)与单元内容之间的间距。
 
回到上面说的,表格里面的内容同学们也看到了,是左对齐的,有的时候我们会选择居中对齐,会更加好看或者更好管理,那么我们做一次,内容居中效果:
 
td,th{
text-align: center;
}
text代表文本内容,align则是对齐方式,那么值,选择的就是:center(居中),这里可以选择left(左对齐),right(右对齐)。效果就会直接出来了
 

第七篇 CSS盒子的更多相关文章

  1. 第七篇 css选择器实现字段解析

    CSS选择器的作用实际和xpath的一样,都是为了定位具体的元素 举例我要爬取下面这个页面的标题 In []: title = response.css(".entry-header h1& ...

  2. 每天学点前端——基础篇1:css盒子模型,绝对定位和相对定位

    什么是css盒子模型(Box Model)? W3C中解释为:规定了元素框处理元素内容.内边距.边框和外边距的方式: MDN:文档中的每个元素被描绘为矩形盒子.渲染引擎的目的就是判定大小,属性--比如 ...

  3. CSS盒子的浮动

    web前端学习笔记(CSS盒子的浮动) 在标准流中,一个块级元素在水平方向会自动伸展,直到包含它的元素的边界:而在竖直方向和兄弟元素依次排列,不能并排.使用“浮动”方式后,块级元素的表现就会有所不同. ...

  4. 前端总结·基础篇·CSS(二)视觉

    前端总结系列 前端总结·基础篇·CSS(一)布局 前端总结·基础篇·CSS(二)视觉 前端总结·基础篇·CSS(三)补充 前端总结·基础篇·CSS(四)兼容 目录 一.动画(animation)(IE ...

  5. <转>HTML+CSS总结/深入理解CSS盒子模型

    原文地址:http://www.chinaz.com/design/2010/1229/151993.shtml 前言:前阵子在做一个项目时,在页面布局方面遇到了一点小问题,于是上stackoverf ...

  6. 前端总结·基础篇·CSS(一)布局

    目录 这是<前端总结·基础篇·CSS>系列的第一篇,主要总结一下布局的基础知识. 一.显示(display) 1.1 盒模型(box-model) 1.2 行内元素(inline) &am ...

  7. 我给女朋友讲编程CSS系列(4) CSS盒子模型

    什么是CSS盒子模型?如何学习CSS的盒子模型? 这篇文章,以 [分享 + 结论]  的方式来写. 1,  看w3school的[CSS 框模型概述] 网址为: http://www.w3school ...

  8. 前端总结·基础篇·CSS

    前端总结·基础篇·CSS 1 常用重置+重置插件(Normalize.css,IE8+) * {box-sizing:border-box;}  /* IE8+ */body {margin:0;}  ...

  9. 七种CSS左侧固定,右侧自适应两栏布局

    一 两栏布局基本HTML和CSS 首先创建基本的HTML布局和最基本的样式. 基本的样式是,两个盒子相距20px, 左侧盒子宽120px,右侧盒子宽度自适应 <div class="w ...

随机推荐

  1. css中的border-collapse属性如何设置表格边框线?(代码示例)

    css中的border-collapse属性如何设置表格边框线?本篇文章就给大家介绍css中的border-collapse属性是什么? border-collapse属性设置表格边框线的方法.有一定 ...

  2. ASP.NET Core开发者指南(转发)

    ASP.NET Core开发者指南 2019年ASP.NET Core开发者指南: 你可以在下面找到一张图,该图展示了你可以选取的路径及你想学习的库,从而成为一名 ASP.NET Core 开发者.& ...

  3. HashMap 的实现原理解析(转载)

    HashMap 概述 HashMap 是基于哈希表的 Map 接口的非同步实现.此实现提供所有可选的映射操作,并允许使用 null 值和 null 键.此类不保证映射的顺序,特别是它不保证该顺序恒久不 ...

  4. Linux 查找特定程序 whereis

    Linux 查找特定程序 whereis whereis 命令主要用于查找程序文件,并提供这个文件的二进制可执行文件.源代码文件和使用手册存放位置. 1.查找命令程序 例如,查找 touch 命令 [ ...

  5. python3将汉字转换为大写拼音首字母

    利用pypinyin包 实现 import pypinyin a = pypinyin.pinyin('你好世界', style=pypinyin.FIRST_LETTER) b = [] for i ...

  6. ES5与ES6常用语法教程之 ③模板字符串、判断字符串是否包含其它字符串

    这部分教程我们主要讲解以下几个常用语法 模板字符串 带标签的模板字符串 判断字符串中是否包含其他字符串 给函数设置默认值 模板字符串 老式的拼接字符串方法 let dessert = '

  7. 关联SecureCRT

    建议安装SecureCRT 8.1及其以上版本,打开http://EVE-NG地址/files/windows.zip下载eve-ng的Windows关联文件,然后使用文本编辑工具编辑win7_64b ...

  8. C#连接oracle数据库报错:OCIEnvCreate 失败,返回代码为 -1,但错误消息文本不可用

    原因大概是OracleOraDb11g_home1TNSListener服务没启动的原因 步骤一.停止并重新启动OracleOraDb11g_home1TNSListener服务,试一下是否可行. 如 ...

  9. make j* make j4 make j8 区别

    转载: make -j4是什么意思看书上说1) make(1)只衍生一个作业//作业是什么意思?make(1) 是不是就是make的意思?2) 在双处理器上make -j4,难道是让每个处理器跑两个作 ...

  10. asp.net之后台使用根目录运算符

    在asp.net前台,大家会经常使用根目录运算符~.这样,可以不用考虑网站的配置目录. 有时,需要在后台设置路径,同样需要使用根目录运算符.好吧,其实我每次需要使用这种方法,就需要在baidu上查找如 ...