模块二学习内容

### CSS核心样式

* * *

#### css字体属性

##### font-weight:字体粗细

* 作用:设置文字是否加粗显示。

* 属性名:font-weight 属于font属性的一个单一属性,属性值分为单词和数字。

* 属性值:

    1. normal  默认值,定义标准的字体。 

    2. bold   定义粗字体,b strong 标签的默认值。

    3. bolder  定义更粗的字体。

    4. lighter   定义更细的。

    5. 100-900之间的整数字  其中400等价于noraml,700等价于bold。

##### font-style:字体风格

* 作用:设置字是否斜体显示。

* 属性名:font-style,属于font属性的一个单一属性。属性值为单词。

* 属性值:

    1. normal  默认值,设置正规的字体。

    2. italic  设置倾斜的文字,主要针对文字,要求英文中以字体中的斜体样式显示。

    3. oblique   设置倾斜的文字,只是将字体倾斜,与字体无关。

##### line-height:行高

* 作用:设置的是一行文字实际占有的高度,文字字号在行高中是垂直居中的。

* 属性名:line-height,属于font属性的一个单一属性。属性值分为px像素值和百分比。

* 属性值:

    1. px像素值  设置行高的具体的像素值。

    2. 百分比数值  设置的本身字号像素值的百分比。

##### font综合书写:

* 书写方式:

    1. font进行综合书写时,必须要有字号和字体参与,而且必须字号在前,字体在后。

    2. font属性经常对字体、字号、行高进行书写时,书写顺序必须是字号、行高、字体。字号和行高之间必须用/进行分隔。

    3. 如果font属性需要设置加粗和斜体,那么这两个值只能写在最前面,而且这两个值可以互换位置。后面的字号、行高、字体位置不能更改位置。

#### CSS文本属性

##### text-align:水平对齐

* 作用:设置文本水平方向的对齐。在盒子中,无论文本是单行还是多行,都会对应方向对齐。

* 属性值:

    1. left  居左对齐,大部分标签的默认值。

    2. center   居中对齐。

    3. right   居右对齐。

##### text-decoration:文本修饰

* 作用:设置文本整体是否有线条的修饰效果。

* 属性值:

    1. none  没有修饰,大部分标签的默认值。

    2. overline  上划线。

    3. line-through  中划线,删除线,标签的默认值。

    4. underline  下划线,标签的默认值。

##### text-indent:文本缩进

* 作用:设置段落首行是否进行首行缩进。

* 属性值:

    1. px像素值  表示首行缩进多少像素。

    2. em单位  表示首行缩进多少个中文字符的位置。

    3. 百分比%  表示缩进文字所在的标签的父级标签的width属性值的百分比。


    在实际工作中,最常使用em为单位的属性值,并且属性值区分正负,正表示向右缩进,负表示向左。对于文本标签因为长度和高度都是其内部内容自动撑开,所以要设置文本标签要首先将其设置为块。


* * *

#### CSS盒模型:

盒模型又叫框模型,包含了五个用来描述盒子位置、尺寸的属性,分别是宽度width、高度height、内边距padding、边框border、外边距margin。

##### 盒模型的区域:

* 可以书写的区域:width+height。

* 盒子可以实体化的区域:width+height+padding+border

* 盒子实际占位的位置:width+height+padding+border+margin。

##### width:宽度

* 作用:设置可以添加元素内容的区域的宽度。

* 属性值:

    1. auto    默认值。浏览器可计算出实际的高度。

    2. px像素值  像素值定义的宽度。

    3. 百分比%  定义参考父元素宽度width的百分比宽度。

    如果一个元素不添加width属性,默认属性值为auto,不同的浏览器会根据其特点自动计算出实际宽度,例如

元素等独占一行的,其width属性的值会自动撑满父元素的width区域,如果是元素不需要独占一行的,其width属性的值是内部元素内容自动撑开的宽度。

    元素比较特殊,不需要设置width属性,宽度会自动适应浏览器窗口的宽度。

##### height:高度

* 作用:设置可以添加元素内容的区域的高度。

* 属性值:

    1. auto  默认值。浏览器会计算出实际的高度。

    2. px像素值  像素值定义的高度。

    3. 百分比%   定义参考父元素高度height的百分比高度。


    如果一个元素不添加height属性,默认属性值为auto,浏览器会自动计算出实际高度,也就是内部元素内容自动撑开的高度。元素的高度自适应内部内容的高度。


##### padding:内边距

* 作用:设置的是元素的边框内部到宽高区域之间的距离。

* 特点:可以加载背景,不能书写嵌套的内容。

* 属性值:常用px为单位的数值。

padding是一个复合属性,可以根据内边距的方向的不同划分为四个方向的单一属性。

    ```

        p {

            padding-top: 10px;

            padding-right: 20px;

            padding-bottom: 30px;

            padding-left: 40px;

        }

    ```

* 写法:

    1. 四值法:设置四个属性值,分配为上、右、下、左。


        ```

            p{

                padding:10px 20px 30px 40px

            }

        ```

    2. 三值法:设置三个属性值,分配为上、左右、下。


        ```

        p{

            padding:10px 20px 30px;

        }

        ```

    3. 二值法:设置两个值,分配为上下、左右。


        ```

        p{

            padding:10px 20px;

        }

        ```


    4. 二值法:设置两个值,分配为上下、左右。

            p{

                padding:10px 20px;

            }

##### border: 边框

* 作用:设置的是内边距外面的边界区域,作为盒子的实体化的最外层。

* 属性值:由三个值组成,分为线的宽度、线的形状、线的颜色。

* border属性是一个复合属性,根据划分依据不同可以有两种单一属性的划分方式。

* 按照属性值类型划分:

    1. border-width 线宽,设置边框线的宽度,属性值写法类似于padding四种值的写法。

    2. border-style 线型,设置边框的线条形状,属性值为单词,类似于padding四种值的写法。

        ① none  定义无边框。

        ② solid  定义实线。

        ③ dashed  定义虚线,在大多数浏览器中呈现为实线。

        ④ dotted  定义点状边框,在大多数浏览器中呈现为实线。

        ⑤ double  定义双线,双线的宽度等于border-width的值。

        ⑥ groove  定义3D,其效果取决于border-color的值。

        ⑦ ridge  定义3D垄状边框,其效果取决于border-color的值。

        ⑧ inset  定义3D内容凹陷效果,其效果取决于border-color的值。

        ⑨ outset  定义3D内容凸出效果,其效果取决于border-color的值。

    3. border-color 边框颜色,设置边框的颜色,属性值为颜色名或者颜色值,类似于padding四值法。

* 根据边框的方向划分:

    1. 上边框:border-top

    2. 右边框:border-right

    3. 下边框:border-bottom

    4. 左边框:border-left


每一个单一方向的属性都必须与复合属性border一致,设置三个属性值:boder-top: 10px solid #f00

根据方向和类型可以进一步划分为单一属性写法:border-方向-类型。细分时必须要先划分方向,再写类型划分,否则属性名错误。

##### margin:外边距

* 作用:设置的是盒子与盒子之间的距离。但是不能渲染背景。

* 属性值:px像素值。

外边距的设置方式与内边距padding是一样的

#### 盒模型扩展应用

##### 清除默认样式

* 大部分的标签都有一个浏览器的默认样式,会对布局造成一些影响。为了避免默认样式对整体布局效果造成影响,一定要清除默认样式。

* 盒模型属性中内外边距:大部分容器级都有默认边距,要么用标签选择器的并集方式,要么通配符清除。

*

你可能感兴趣的:(模块二学习内容)