盒模型

一、初识盒模型
html中所有的元素都被视为一个矩形盒子,从中心到外部依次包含:内容区域内边距padding边框border外边距margin

盒模型图

二、内、外边距

属性 定义
magin-top 上-外边距
margin-right 右-外边距
margin-bottom 下-外边距
margin-left 左-外边距
属性 定义
padding-top 上-内边距
padding-right 右-内边距
padding-bottom 下-内边距
padding-left 左-内边距
  • 内、外边距只有大小,没有颜色及样式
  • 设置上右下左等值的内、外边距
padding: 20px; /*上右下左为20像素的内边距*/
margin: 20px; /*上右下左为20像素的外边距*/
  • 单独设置某一边的内、外边距大小
margin-top: 10px;       /*上-外边距为10像素*/ 
margin-right: 20px;    /*右-外边距为20像素*/
margin-bottom: 30px;   /*下-外边距为30像素*/
margin-left: 40px;     /*左-外边距为40像素*/
--
padding-top: 10px;       /*上-内边距为10像素*/ 
padding-right: 20px;    /*右-内边距为20像素*/
padding-bottom: 30px;   /*下-内边距为30像素*/
padding-left: 40px;     /*左-内边距为40像素*/
  • 内、外边距只有大小,没有颜色及样式,他们是透明的。但会呈现背景色和背景图像。
  • 元素的背景颜色(或背景图像)会延伸到内边距下,但不会延伸到外边距下。

三、边框——border

  • 边框样式
border-style: solid;    /*实线*/
border-style: double;   /*双线*/
border-style: groove;   /*槽线*/
border-style: outset;   /*外凸*/
border-style: dotted;   /*虚线或点线*/
border-style: dashed;   /*破折线*/
border-style: inset;    /*内凹*/
border-style: ridge;    /*脊线*/
效果图
  • 边框宽度
    使用border-width属性来控制边框宽度,属性值为关键字或像素。
    关键字为:thin,medium,thick
border-widht: thin;   /*细*/
border-widht: medium; /*中等*/
border-widht: thick;  /*粗*/
border-widht: 5px;
  • 边框颜色
    使用border-color属性指定边框颜色,跟字体颜色设定一样,使用颜色名、rgb值、十六进制码都可以。
border-color: red;
border-color: rgb(100%, 0%, 0%);
border-color: #ff0000;
  • 指定某一边的边框样式、宽度、颜色
    单独设置某一边的边框同单独设置某一边的内外边距一样,只是边框涉及到样式、宽度、颜色。
    使用border-top、border-bottom、border-left、border-right加上style、width、color来分别表示上、下、左、右边框的样式、宽度、和颜色。
    例子:
border-top-style: solid;
border-top-width: thin;
border-top-color: red;
--
border-bottom-style: solid;
border-bottom-width: thin;
border-bottom-color: red;
--
border-left-style: solid;
border-left-width: thin;
border-left-color: red;
--
border-right-style: solid;
border-right-width: thin;
border-right-color: red;
  • 指定边框圆角
  • 指定边框四周为圆角
border-radius: 15px;
四周圆角效果图
  • 指定某一边边框为圆角
border-top-left-radius: 3em;
border-top-right-radius: 3em;
border-bottom-right-radius: 3em;
border-bottom-left-radius: 3em;
效果图
border-top-left-radius: 15px;
border-top-right-radius: 0px;
border-bottom-right-radius: 15px;
border-bottom-left-radius: 0;
效果图
  • 增加背景图片
background-image: url(image/background.gif);
  • 调整背景图片的位置
background-image: url(image/background.gif);
background-position: top left;    /*背景图放在左上角*/
  • 背景图是否重复
    默认背景图是“平铺”的方式显示,可设置不重复或在某一方向重复
background-image: url(image/background.gif);
background-position: top left;  /*背景图放在左上角*/
--
background-repeat: repeat;      /*默认平铺*/
background-repeat: no-repeat;   /*不重复*/
background-repeat: repeat-x;    /*水平方向重复*/
background-repeat: repeat-y;    /*垂直方向重复*/
background-repeat: inherit;     /*按父元素的设置来处理*/

四、class属性和id属性

  1. class属性
    首先要在HTML中加入一个类,需要使用<class>属性,再为其提供一个值。
    例子:
    <p class="greentea">
       示例段落... 
    </p>

然后再在CSS中创建一个类选择器。
例子:

p.greentea{
color:green;
}

先选择元素p,再选择它的类名greentea,中间用一个.隔开。这样就会选择greentea类中的所有段落的文本为绿色。

  • 使用".classname"可以选择属性这个类的所有元素
    例子:
.greentea{
color:greet;
}

此规则中,所有属性值(属性的类名)为greentea的元素的文本都会成为绿色

  • 可以在一个class属性中放入多个类名,中间用空格隔开,这个元素就属于多个类。
    例子:
<p class="greentea raspberry blueberry">

2.id属性
为元素增加一个id属性

<p id="footer">greentea raspberry blueberry</p>

在CSS中选择这个值为:footerid,需要在footerid前加#字符

#footer{                      /* 选择id为footer的任意元素*/
color: greet;
}
--
p#footer{                    /* 选择id为footer的<p>元素*/
color: greet;
}

id选择器只于页面一个元素相匹配,id必须是唯一性!

五、在HTML中引用多个样式表

  1. 下面html中引用了3个样式表,从上到下顺序很重要,最下面的样式表优先级最高。
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Head First Lounge</title>
--
    <link type="text/css" rel="stylesheet" href="lounge.css" media="screen and (min-width: 481px)">
--
    <link type="text/css" rel="stylesheet" href="lounge-mobile.css" media="screen and (max-width: 480px)">  
--
    <link type="text/css"  rel="stylesheet" href="lounge-print.css" media="print">
--
  </head>
  <body>
......
</body>
</html>
  1. 为多个设备设定不一样的样式
  • 在HTML中使用media属性,创建媒体查询来指定设备,如手机、平板等。
<link href="lounge.css" rel="stylesheet" 
         media="screen and (max-device-width: 480p) ">   
/*此规则应用到屏幕宽度不超过480px的设备*/
  • 在css中增加创建媒体查询
@media screen and (min-device-width: 481px) /*设备屏幕宽度大于481px*/  {
#guarantee{
margin-right: 250px;
       }
}
/*@media+媒体查询+{应用于此设备的规则}*/
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,390评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,821评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,632评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,170评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,033评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,098评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,511评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,204评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,479评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,572评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,341评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,893评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,171评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,486评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,676评论 2 335

推荐阅读更多精彩内容