CSS详解

颜色和单位的使用

  1. 颜色
    • 用颜色的名字表示颜色,比如:red
    • 用16进制表示演示 比如:#FF0000
    • 用rgb数值表示颜色,rgb(红,绿,蓝),每个值都在0-255之间

      一般都用16进制表示颜色

  2. 单位
    • px:像素,与分辨率设置相关.
    • %相对于浏览器的百分之多少,可以对宽度width做设置,不可以对height做设置

文本样式(text)

  1. color:设置文本颜色
  2. text-align:设置文本对齐方式
    • center
    • left
    • right
  3. letter-spacing:字间距/字母间距
  4. word-spacing:单词间距,有空格就设置,中文看空格.
  5. line-height:行高(第二行的行高=第一行底部到第三行顶部)
  6. text-indent:一般30px就2个
  7. text-decoration:文本装饰
    • underline:下划线
    • overline:上划线
    • line-through:删除线
    • blink 闪烁(不会用)
  8. text-transform:大小写转换
    • uppercase:全部大写
    • lowercase:全部小写
    • capitalize:每个单词以大写开头
  9. text-shadow:创建文本阴影(水平偏移量px,垂直偏移量px,模糊程度px,阴影颜色),模糊程度px值高越模糊.
  10. 设置字体:
  • font-style:字体样式italic,oblique斜体
  • font-size:设置字体的大小
  • font-weight:设置字体的粗细,bolder最粗
  • font-family:设置文字字体,楷体,隶书等等
  • font简写属性: style weight size family(空格)顺序必须按这个格式,一般用了简写属性之后把行间距letter-spacing放font属性后边,不然会覆盖.

边框和背景

  1. 为元素应用边框
    • border-width:边框宽度
    • border-style:边框样式

      none没有边框

      dashed虚线

      solied实线

      double双线

      groove槽线

      dotted圆点线边框

      inset内嵌 outset外凸

      ridge 脊线边框

    • bolder-color:边框颜色
    • 简写形式border:width style color 没有先后顺序
  2. 单独设置某一条边框
    • border-top/bottom/left/right-width/style/color
    • 简写形式:border-top{width,style,color}
  3. 应用圆角边框(x半径,y半径,xy相同时写一个就好了)
    • border-top/bottom-left/right-radius
    • 简写:border-radius
  4. 设置元素背景
    • margin-right: 0px; margin-bottom: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; list-style: disc;">background-image:{url("")} 背景图片地址
    • background-repeat:背景图重复方式,一般no-repeat
    • background-size:背景图尺寸
    • background-position:背景图位置
    • 简写:background:color image repeat position,尺寸不写,会冲突
  5. 创建盒子阴影
    • box-shadow:水平偏移量 垂直偏移量 模糊值 阴影的延伸半径 阴影颜色 10px 10px 5px 0px red;
    • 添加多个阴影,直接第一个之后用逗号继续写第二个,第一个设置成整数,第二个阴影设置成负数
  6. 设置轮廓
    • 边框和轮廓的区别:轮廓不属于页面,不会因为应用轮廓而调整页面的布局
    • 边框占有实际大小,轮廓不占有
    • 当设置hover悬停时,轮廓修饰的div不会发生位移,边框修饰时位移
    • outline-color:轮廓颜色
    • outline-style:轮廓样式
    • outline-width:轮廓宽度
    • outline-offset:轮廓距元素边框偏移量
    • 简写: outline

其他样式(表格,列表,透明度,光标)

  1. 表格
    • border-collapse相邻单元格边框处理,合并表格=collapse
    • border-spacing:相邻单元格间距
    • caption-side:标题位置
    • empty-cells:空单元格是否显示
  2. 列表

    • list-style-tyle:列表前边的标记样式 圆点,方点等等
    • list-style-image:列表图像标记
    • 简写:list-style:none 取消列表的所有属性 一般用于导航
    • 横向导航: li{display:inline}
  3. 透明度

    • opacity:设置透明度(0-1之间取值)
  4. 光标形状

    • cursor:设置光标形状,当光标放在某个div上边,设置等待状,手形状等等.

盒子模型

盒子模型分为元素,内边距,边框,外边距,

1.设置一定尺寸的元素

1). width:设置元素宽度
2). height:设置元素高度

2.设置内边距

  • padding-top/bottom/right/left
  • padding:简写形式

3.设置外边距(边框到浏览器边缘或者到下一个盒子的距离)

  • margin-top/bottom/left/right
  • margin:简写形式

4.设置最小和最大尺寸(宽度设置为百分比时,扩大或缩小浏览器或者换了大屏或小屏显示器之后,防止元素错位或溢出)

  • min-width:最小值为两div宽度相加值
  • max-width:最大值

5.处理元素内容溢出

  • overflow-x/y:x或y轴溢出
  • overflow:简写形式: scroll设置滚动条(溢出处理方式)

6.改变元素类型

1).元素类型分为:

  • inline行内元素:在页面中不可设置宽高,也不会独占一行,b,span
  • inline-block行内块级元素:不能独占一行,但能设置宽高.img元素
  • block块级元素:独占一行,可以设置宽高,p,div元素

2).改变元素类型display:

  • 元素类型可以相互转换,转化之后元素性质也随之改变
  • div一般不转化为行内元素,会丢掉,不能设置高

3).隐藏元素: display:none

7.浮动和阻止元素堆叠

  • 浮动:float:left/right
  • 消除元素堆叠在一起: clear:both(左右都消除)

8.案例:

百度页面的搭建:

  • 技巧:为了让div居中,直接margin:0 auto;
  • 为了初始不执行浏览器默认特征: *{margin:0px; padding:0px}
  • 为了防止div块溢出,设置最大最小值. 最小值就是左右两边div相加
  • 文字垂直居中:line-height
  • 做导航,链接a标签加到li标签外边

布局样式

1. 定位方式position

  • static:默认,元素为普通元素,文档流定位,从上到下
  • relative(相对的):元素的位置是相对于普通的位置定位的 ,位移之前的位置 其他元素用不了,一般不做太大的改动 ,对某个元素位置进行微调 ,只能使用top,left 我感觉他是相对于他之前的位置移动的
  • fixed(固定的):相对于浏览器窗口来定位 ,常用!!! ,位移之前位置不会被占用, 上下左右都可以使用, 小广告常用手法, 滚动条不断移,他的位置也不变 ,他会脱离文档流,漂浮于文档流上边,他这个上下左右是相对于边的位置,比如:top50px 不是向上移动50px ,而是元素相对于顶部边框距离50px 设置buttom也同样可以使用,而且拉动滚动条也不会变化位置

  • absolute(绝对的):元素相对position值不为static的一个祖先元素定 子元素依据祖先元素变化 祖先元素不能为static 依据谁变化,谁不可以为static(默认为static),发生在父子 或 祖先元素与后代元素之间的位移定位

    2. 定位布局

    top/bottom/left/right

    3. z-index

    用来设置元素 和 元素 的显示层数,正数 负数 都可以

    必须配合position使用

    过渡,变形

    1. 过渡

    过渡:元素由一种样式逐渐变为另一种样式

    属性:

  • transition-delay:设置过渡前的延时
  • transition-duration:设置过渡用时
  • transition-property:设置过渡参与的属性
  • transition-timing-function:过渡速率(linear匀速)
  • transition:简写形式(property duration timing-function delay)

    反向过渡:

    hover中设置的,粘贴到div中,就可以了

2. 变形

  • transform: 指定如何变形
  • transform: scaleX/Y(1.5) 缩放1.5倍
  • transform: rotate(360deg) 旋转360度 deg代表度数,配合过渡时间 效果很好
  • transform: skew(X轴角度,Y轴角度) 倾斜的角度
  • transform: translate(X轴距离,Y轴距离) 移动的距离

CSS详解

1.CSS概念及语法结构

2.CSS引入方式及优先级

3.CSS选择器及优先级

4.CSS继承特性

5.CSS冲突问题

6.盒子原理(边距,填充,边框,默认宽度,填充对背景的影响)

7.浮动详解

8.绝对定位与相对定位

9.z-index原理

10.行内元素与块状元素及两种元素的转化方法(display)

11.了解background的复杂用法

12.了解溢出(overflow),理解clear和overflow的重要性

13.表格与表单相关属性操作

14.CSS兼容性问题处理

15.CSS sprite,滑动门,伪类,菜单应用等详解

16.网站布局(固定宽度,变化宽度,固定宽度与变化宽度结合等等)

通过该阶段学习,深入学习和应用CSS原理,快速掌握CSS核心的东西,

让你学习CSS能达到事半功倍的效果,学完后自己能动手完成各种页面

样式的定义和编写,并能处理浏览器的兼容性.

CSS 语法

1 CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明。

选择器通常是您需要改变样式的 HTML 元素。 每条声明由一个属性和一个值组成。

在这个例子中,h1 是选择器,color 和 font-size 是属性,red 和 14px 是值。 h1 {color:red; font-size:14px;}如果要定义不止一个声明,则需要用分号将每个声明分开 table{border:1px;} 0 之后不需要使用 px 单位,因为 0 就是 0,无论单位是什么。

2 提示:如果值为若干单词,则要给值加引号:p {font-family: "sans serif";}

是否包含空格不会影响 CSS 在浏览器的工作效果,同样,与 XHTML 不同,CSS 对大小写不敏感。 不过存在一个例外:如果涉及到与 HTML 文档一起工作的话, 3 class 和 id 名称对大小写是敏感的。

4 选择器的分组 h1,h2,h3,h4,h5,h6 { color: green; }

5 继承及其问题 , 通过 CSS 继承,子元素将继承最高级元素(在本例中是 body)所拥有的属性 body { font-family: Verdana, sans-serif; }

p, td, ul, ol, li, dl, dt, dd { font-family: Verdana, sans-serif; }

6 派生选择器

通过依据元素在其位置的上下文关系来定义样式,你可以使标记更加简洁。 li strong { font-style: italic; font-weight: normal; }

<p><strong>我是粗体字,不是斜体字,因为我不在列表当中,所以这个规则对我不起作用</strong></p>

<ol> <li><strong>我是斜体字。这是因为 strong 元素位于 li 元素内。</strong></li> <li>我是正常的字体。</li> </ol>

7 id 选择器

id 选择器可以为标有特定 id 的 HTML 元素指定特定的样式。

id 选择器以 "#" 来定义。 #red {color:red;} #green {color:green;}

下面的 HTML 代码中,id 属性为 red 的 p 元素显示为红色,而 id 属性为 green 的 p 元素显示为绿色。 <p >这个段落是绿色。</p>

8 CSS 类选择器 类选择器以一个点号显示: .center {text-align: center}

9.使用 margin 属性来水平对齐

注释:除非已经声明了 !DOCTYPE,否则使用 margin:auto 在 IE8 以及更早的版本中是无效的。 如果宽度是 100%,则对齐没有效果。

10.使用 position 属性进行左和右对齐 body { margin:0; padding:0; } .container { position:relative; width:100%; } .right { position:absolute; right:0px; width:300px; background-color:#b0e0e6; }

使用 float 属性来进行左和右对齐

跨浏览器兼容性问题 当使用 float 属性时,IE8 以及更早的版本存在一个问题。如果省略 !DOCTYPE 声明,那么 IE8 以及更早的版本会在右侧增加 17px 的外边距。这似乎是为滚动条预留的空间。当使用 float 属性时,请始终设置 !DOCTYPE 声明:

11 创建透明图像 IE9, Firefox, Chrome, Opera 和 Safari 使用属性 opacity 来设定透明度。opacity 属性能够设置的值从 0.0 到 1.0。值越小,越透明。

IE8 以及更早的版本使用滤镜 filter:alpha(opacity=x)。x 能够取的值从 0 到 100。值越小,越透明。

CSS3 属性参考手册

CSS3 动画属性(Animation)

属性

描述

CSS

@keyframes 规定动画。 3 animation 所有动画属性的简写属性,除了 animation-play-state 属性。 3 animation-name 规定 @keyframes 动画的名称。 3 animation-duration 规定动画完成一个周期所花费的秒或毫秒。 3 animation-timing-function 规定动画的速度曲线。 3 animation-delay 规定动画何时开始。 3 animation-iteration-count 规定动画被播放的次数。 3 animation-direction 规定动画是否在下一周期逆向地播放。 3 animation-play-state 规定动画是否正在运行或暂停。 3 animation-fill-mode 规定对象动画时间之外的状态。 3

CSS 背景属性(Background)

属性

描述

CSS

background 在一个声明中设置所有的背景属性。 1 background-attachment 设置背景图像是否固定或者随着页面的其余部分滚动。 1 background-color 设置元素的背景颜色。 1 background-image 设置元素的背景图像。 1 background-position 设置背景图像的开始位置。 1 background-repeat 设置是否及如何重复背景图像。 1 background-clip 规定背景的绘制区域。 3 background-origin 规定背景图片的定位区域。 3 background-size 规定背景图片的尺寸。 3

CSS 边框属性(Border 和 Outline)

属性

描述

CSS

border 在一个声明中设置所有的边框属性。 1 border-bottom 在一个声明中设置所有的下边框属性。 1 border-bottom-color 设置下边框的颜色。 2 border-bottom-style 设置下边框的样式。 2 border-bottom-width 设置下边框的宽度。 1 border-color 设置四条边框的颜色。 1 border-left 在一个声明中设置所有的左边框属性。 1 border-left-color 设置左边框的颜色。 2 border-left-style 设置左边框的样式。 2 border-left-width 设置左边框的宽度。 1 border-right 在一个声明中设置所有的右边框属性。 1 border-right-color 设置右边框的颜色。 2 border-right-style 设置右边框的样式。 2 border-right-width 设置右边框的宽度。 1 border-style 设置四条边框的样式。 1 border-top 在一个声明中设置所有的上边框属性。 1 border-top-color 设置上边框的颜色。 2 border-top-style 设置上边框的样式。 2 border-top-width 设置上边框的宽度。 1 border-width 设置四条边框的宽度。 1 outline 在一个声明中设置所有的轮廓属性。 2 outline-color 设置轮廓的颜色。 2 outline-style 设置轮廓的样式。 2 outline-width 设置轮廓的宽度。 2 border-bottom-left-radius 定义边框左下角的形状。 3 border-bottom-right-radius 定义边框右下角的形状。 3 border-image 简写属性,设置所有 border-image-* 属性。 3 border-image-outset 规定边框图像区域超出边框的量。 3 border-image-repeat 图像边框是否应平铺(repeated)、铺满(rounded)或拉伸(stretched)。 3 border-image-slice 规定图像边框的向内偏移。 3 border-image-source 规定用作边框的图片。 3 border-image-width 规定图片边框的宽度。 3 border-radius 简写属性,设置所有四个 border-*-radius 属性。 3 border-top-left-radius 定义边框左上角的形状。 3 border-top-right-radius 定义边框右下角的形状。 3 box-decoration-break 3 box-shadow 向方框添加一个或多个阴影。 3

Box 属性

属性

描述

CSS

overflow-x 如果内容溢出了元素内容区域,是否对内容的左/右边缘进行裁剪。 3 overflow-y 如果内容溢出了元素内容区域,是否对内容的上/下边缘进行裁剪。 3 overflow-style 规定溢出元素的首选滚动方法。 3 rotation 围绕由 rotation-point 属性定义的点对元素进行旋转。 3 rotation-point 定义距离上左边框边缘的偏移点。 3

Color 属性

属性

描述

CSS

color-profile 允许使用源的颜色配置文件的默认以外的规范。 3 opacity 规定书签的级别。 3 rendering-intent 允许使用颜色配置文件渲染意图的默认以外的规范。 3

Content for Paged Media 属性

属性

描述

CSS

bookmark-label 规定书签的标记。 3 bookmark-level 规定书签的级别。 3 bookmark-target 规定书签链接的目标。 3 float-offset 将元素放在 float 属性通常放置的位置的相反方向。 3 hyphenate-after 规定连字单词中连字符之后的最小字符数。 3 hyphenate-before 规定连字单词中连字符之前的最小字符数。 3 hyphenate-character 规定当发生断字时显示的字符串。 3 hyphenate-lines 指示元素中连续断字连线的最大数。 3 hyphenate-resource 规定帮助浏览器确定断字点的外部资源(逗号分隔的列表)。 3 hyphens 设置如何对单词进行拆分,以改善段落的布局。 3 image-resolution 规定图像的正确分辨率。 3 marks 向文档添加裁切标记或十字标记。 3 string-set 3

CSS 尺寸属性(Dimension)

属性

描述

CSS

height 设置元素高度。 1 max-height 设置元素的最大高度。 2 max-width 设置元素的最大宽度。 2 min-height 设置元素的最小高度。 2 min-width 设置元素的最小宽度。 2 width 设置元素的宽度。 1

可伸缩框属性(Flexible Box)

属性

描述

CSS

box-align 规定如何对齐框的子元素。 3 box-direction 规定框的子元素的显示方向。 3 box-flex 规定框的子元素是否可伸缩。 3 box-flex-group 将可伸缩元素分配到柔性分组。 3 box-lines 规定当超出父元素框的空间时,是否换行显示。 3 box-ordinal-group 规定框的子元素的显示次序。 3 box-orient 规定框的子元素是否应水平或垂直排列。 3 box-pack 规定水平框中的水平位置或者垂直框中的垂直位置。 3

CSS 字体属性(Font)

属性

描述

CSS

font 在一个声明中设置所有字体属性。 1 font-family 规定文本的字体系列。 1 font-size 规定文本的字体尺寸。 1 font-size-adjust 为元素规定 aspect 值。 2 font-stretch 收缩或拉伸当前的字体系列。 2 font-style 规定文本的字体样式。 1 font-variant 规定是否以小型大写字母的字体显示文本。 1 font-weight 规定字体的粗细。 1

内容生成(Generated Content)

属性

描述

CSS

content 与 :before 以及 :after 伪元素配合使用,来插入生成内容。 2 counter-increment 递增或递减一个或多个计数器。 2 counter-reset 创建或重置一个或多个计数器。 2 quotes 设置嵌套引用的引号类型。 2 crop 允许被替换元素仅仅是对象的矩形区域,而不是整个对象。 3 move-to 从流中删除元素,然后在文档中后面的点上重新插入。 3 page-policy 确定元素基于页面的 occurrence 应用于计数器还是字符串值。 3

Grid 属性

属性

描述

CSS

grid-columns 规定网格中每个列的宽度。 3 grid-rows 规定网格中每个列的高度。 3

Hyperlink 属性

属性

描述

CSS

target 简写属性,设置target-name、target-new以及target-position属性。 3 target-name 规定在何处打开链接(链接的目标)。 3 target-new 规定目标链接在新窗口还是在已有窗口的新标签页中打开。 3 target-position 规定在何处放置新的目标链接。 3

CSS 列表属性(List)

属性

描述

CSS

list-style 在一个声明中设置所有的列表属性。 1 list-style-image 将图象设置为列表项标记。 1 list-style-position 设置列表项标记的放置位置。 1 list-style-type 设置列表项标记的类型。 1 marker-offset 2

CSS 外边距属性(Margin)

属性

描述

CSS

margin 在一个声明中设置所有外边距属性。 1 margin-bottom 设置元素的下外边距。 1 margin-left 设置元素的左外边距。 1 margin-right 设置元素的右外边距。 1 margin-top 设置元素的上外边距。 1

Marquee 属性

属性

描述

CSS

marquee-direction 设置移动内容的方向。 3 marquee-play-count 设置内容移动多少次。 3 marquee-speed 设置内容滚动得多快。 3 marquee-style 设置移动内容的样式。 3

多列属性(Multi-column)

属性

描述

CSS

column-count 规定元素应该被分隔的列数。 3 column-fill 规定如何填充列。 3 column-gap 规定列之间的间隔。 3 column-rule 设置所有 column-rule-* 属性的简写属性。 3 column-rule-color 规定列之间规则的颜色。 3 column-rule-style 规定列之间规则的样式。 3 column-rule-width 规定列之间规则的宽度。 3 column-span 规定元素应该横跨的列数。 3 column-width 规定列的宽度。 3 columns 规定设置 column-width 和 column-count 的简写属性。 3

CSS 内边距属性(Padding)

属性

描述

CSS

padding 在一个声明中设置所有内边距属性。 1 padding-bottom 设置元素的下内边距。 1 padding-left 设置元素的左内边距。 1 padding-right 设置元素的右内边距。 1 padding-top 设置元素的上内边距。 1

Paged Media 属性

属性

描述

CSS

fit 示意如何对width和height属性均不是auto的被替换元素进行缩放。 3 fit-position 定义盒内对象的对齐方式。 3 image-orientation 规定用户代理应用于图像的顺时针方向旋转。 3 page 规定元素应该被显示的页面特定类型。 3 size 规定页面内容包含框的尺寸和方向。 3

CSS 定位属性(Positioning)

属性

描述

CSS

bottom 设置定位元素下外边距边界与其包含块下边界之间的偏移。 2 clear 规定元素的哪一侧不允许其他浮动元素。 1 clip 剪裁绝对定位元素。 2 cursor 规定要显示的光标的类型(形状)。 2 display 规定元素应该生成的框的类型。 1 float 规定框是否应该浮动。 1 left 设置定位元素左外边距边界与其包含块左边界之间的偏移。 2 overflow 规定当内容溢出元素框时发生的事情。 2 position 规定元素的定位类型。 2 right 设置定位元素右外边距边界与其包含块右边界之间的偏移。 2 top 设置定位元素的上外边距边界与其包含块上边界之间的偏移。 2 vertical-align 设置元素的垂直对齐方式。 1 visibility 规定元素是否可见。 2 z-index 设置元素的堆叠顺序。 2

CSS 打印属性(Print)

属性

描述

CSS

orphans 设置当元素内部发生分页时必须在页面底部保留的最少行数。 2 page-break-after 设置元素后的分页行为。 2 page-break-before 设置元素前的分页行为。 2 page-break-inside 设置元素内部的分页行为。 2 widows 设置当元素内部发生分页时必须在页面顶部保留的最少行数。 2

CSS 表格属性(Table)

属性

描述

CSS

border-collapse 规定是否合并表格边框。 2 border-spacing 规定相邻单元格边框之间的距离。 2 caption-side 规定表格标题的位置。 2 empty-cells 规定是否显示表格中的空单元格上的边框和背景。 2 table-layout 设置用于表格的布局算法。 2

CSS 文本属性(Text)

属性

描述

CSS

color 设置文本的颜色。 1 direction 规定文本的方向 / 书写方向。 2 letter-spacing 设置字符间距。 1 line-height 设置行高。 1 text-align 规定文本的水平对齐方式。 1 text-decoration 规定添加到文本的装饰效果。 1 text-indent 规定文本块首行的缩进。 1 text-shadow 规定添加到文本的阴影效果。 2 text-transform 控制文本的大小写。 1 unicode-bidi 设置文本方向。 2 white-space 规定如何处理元素中的空白。 1 word-spacing 设置单词间距。 1 hanging-punctuation 规定标点字符是否位于线框之外。 3 punctuation-trim 规定是否对标点字符进行修剪。 3 text-align-last 设置如何对齐最后一行或紧挨着强制换行符之前的行。 3 text-emphasis 向元素的文本应用重点标记以及重点标记的前景色。 3 text-justify 规定当 text-align 设置为 "justify" 时所使用的对齐方法。 3 text-outline 规定文本的轮廓。 3 text-overflow 规定当文本溢出包含元素时发生的事情。 3 text-shadow 向文本添加阴影。 3 text-wrap 规定文本的换行规则。 3 word-break 规定非中日韩文本的换行规则。 3 word-wrap 允许对长的不可分割的单词进行分割并换行到下一行。 3

2D/3D 转换属性(Transform)

属性

描述

CSS

transform 向元素应用 2D 或 3D 转换。 3 transform-origin 允许你改变被转换元素的位置。 3 transform-style 规定被嵌套元素如何在 3D 空间中显示。 3 perspective 规定 3D 元素的透视效果。 3 perspective-origin 规定 3D 元素的底部位置。 3 backface-visibility 定义元素在不面对屏幕时是否可见。 3

过渡属性(Transition)

属性

描述

CSS

transition 简写属性,用于在一个属性中设置四个过渡属性。 3 transition-property 规定应用过渡的 CSS 属性的名称。 3 transition-duration 定义过渡效果花费的时间。 3 transition-timing-function 规定过渡效果的时间曲线。 3 transition-delay 规定过渡效果何时开始。 3

用户界面属性(User-interface)

属性

描述

CSS

appearance 允许您将元素设置为标准用户界面元素的外观 3 box-sizing 允许您以确切的方式定义适应某个区域的具体内容。 3 icon 为创作者提供使用图标化等价物来设置元素样式的能力。 3 nav-down 规定在使用 arrow-down 导航键时向何处导航。 3 nav-index 设置元素的 tab 键控制次序。 3 nav-left 规定在使用 arrow-left 导航键时向何处导航。 3 nav-right 规定在使用 arrow-right 导航键时向何处导航。 3 nav-up 规定在使用 arrow-up 导航键时向何处导航。 3 outline-offset 对轮廓进行偏移,并在超出边框边缘的位置绘制轮廓。 3 resize 规定是否可由用户对元素的尺寸进行调整。 3

CSS 选择器

CSS 听觉参考手册 这个很有意思,有空要研究下

CSS 网络安全字体

CSS 单位 CSS

颜色 CSS 颜色值

CSS 颜色名

CSS 颜色十六进制

颜色和单位的使用

  1. 颜色
    • 用颜色的名字表示颜色,比如:red
    • 用16进制表示演示 比如:#FF0000
    • 用rgb数值表示颜色,rgb(红,绿,蓝),每个值都在0-255之间

      一般都用16进制表示颜色

  2. 单位
    • px:像素,与分辨率设置相关.
    • %相对于浏览器的百分之多少,可以对宽度width做设置,不可以对height做设置

文本样式(text)

  1. color:设置文本颜色
  2. text-align:设置文本对齐方式
    • center
    • left
    • right
  3. letter-spacing:字间距/字母间距
  4. word-spacing:单词间距,有空格就设置,中文看空格.
  5. line-height:行高(第二行的行高=第一行底部到第三行顶部)
  6. text-indent:一般30px就2个
  7. text-decoration:文本装饰
    • underline:下划线
    • overline:上划线
    • line-through:删除线
    • blink 闪烁(不会用)
  8. text-transform:大小写转换
    • uppercase:全部大写
    • lowercase:全部小写
    • capitalize:每个单词以大写开头
  9. text-shadow:创建文本阴影(水平偏移量px,垂直偏移量px,模糊程度px,阴影颜色),模糊程度px值高越模糊.
  10. 设置字体:
  • font-style:字体样式italic,oblique斜体
  • font-size:设置字体的大小
  • font-weight:设置字体的粗细,bolder最粗
  • font-family:设置文字字体,楷体,隶书等等
  • font简写属性: style weight size family(空格)顺序必须按这个格式,一般用了简写属性之后把行间距letter-spacing放font属性后边,不然会覆盖.

边框和背景

  1. 为元素应用边框
    • border-width:边框宽度
    • border-style:边框样式

      none没有边框

      dashed虚线

      solied实线

      double双线

      groove槽线

      dotted圆点线边框

      inset内嵌 outset外凸

      ridge 脊线边框

    • bolder-color:边框颜色
    • 简写形式border:width style color 没有先后顺序
  2. 单独设置某一条边框
    • border-top/bottom/left/right-width/style/color
    • 简写形式:border-top{width,style,color}
  3. 应用圆角边框(x半径,y半径,xy相同时写一个就好了)
    • border-top/bottom-left/right-radius
    • 简写:border-radius
  4. 设置元素背景
    • margin-right: 0px; margin-bottom: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; list-style: disc;">background-image:{url("")} 背景图片地址
    • background-repeat:背景图重复方式,一般no-repeat
    • background-size:背景图尺寸
    • background-position:背景图位置
    • 简写:background:color image repeat position,尺寸不写,会冲突
  5. 创建盒子阴影
    • box-shadow:水平偏移量 垂直偏移量 模糊值 阴影的延伸半径 阴影颜色 10px 10px 5px 0px red;
    • 添加多个阴影,直接第一个之后用逗号继续写第二个,第一个设置成整数,第二个阴影设置成负数
  6. 设置轮廓
    • 边框和轮廓的区别:轮廓不属于页面,不会因为应用轮廓而调整页面的布局
    • 边框占有实际大小,轮廓不占有
    • 当设置hover悬停时,轮廓修饰的div不会发生位移,边框修饰时位移
    • outline-color:轮廓颜色
    • outline-style:轮廓样式
    • outline-width:轮廓宽度
    • outline-offset:轮廓距元素边框偏移量
    • 简写: outline

其他样式(表格,列表,透明度,光标)

  1. 表格
    • border-collapse相邻单元格边框处理,合并表格=collapse
    • border-spacing:相邻单元格间距
    • caption-side:标题位置
    • empty-cells:空单元格是否显示
  2. 列表

    • list-style-tyle:列表前边的标记样式 圆点,方点等等
    • list-style-image:列表图像标记
    • 简写:list-style:none 取消列表的所有属性 一般用于导航
    • 横向导航: li{display:inline}
  3. 透明度

    • opacity:设置透明度(0-1之间取值)
  4. 光标形状

    • cursor:设置光标形状,当光标放在某个div上边,设置等待状,手形状等等.

盒子模型

盒子模型分为元素,内边距,边框,外边距,

1.设置一定尺寸的元素

1). width:设置元素宽度
2). height:设置元素高度

2.设置内边距

  • padding-top/bottom/right/left
  • padding:简写形式

3.设置外边距(边框到浏览器边缘或者到下一个盒子的距离)

  • margin-top/bottom/left/right
  • margin:简写形式

4.设置最小和最大尺寸(宽度设置为百分比时,扩大或缩小浏览器或者换了大屏或小屏显示器之后,防止元素错位或溢出)

  • min-width:最小值为两div宽度相加值
  • max-width:最大值

5.处理元素内容溢出

  • overflow-x/y:x或y轴溢出
  • overflow:简写形式: scroll设置滚动条(溢出处理方式)

6.改变元素类型

1).元素类型分为:

  • inline行内元素:在页面中不可设置宽高,也不会独占一行,b,span
  • inline-block行内块级元素:不能独占一行,但能设置宽高.img元素
  • block块级元素:独占一行,可以设置宽高,p,div元素

2).改变元素类型display:

  • 元素类型可以相互转换,转化之后元素性质也随之改变
  • div一般不转化为行内元素,会丢掉,不能设置高

3).隐藏元素: display:none

7.浮动和阻止元素堆叠

  • 浮动:float:left/right
  • 消除元素堆叠在一起: clear:both(左右都消除)

8.案例:

百度页面的搭建:

  • 技巧:为了让div居中,直接margin:0 auto;
  • 为了初始不执行浏览器默认特征: *{margin:0px; padding:0px}
  • 为了防止div块溢出,设置最大最小值. 最小值就是左右两边div相加
  • 文字垂直居中:line-height
  • 做导航,链接a标签加到li标签外边

布局样式

1. 定位方式position

  • static:默认,元素为普通元素,文档流定位,从上到下
  • relative(相对的):元素的位置是相对于普通的位置定位的 ,位移之前的位置 其他元素用不了,一般不做太大的改动 ,对某个元素位置进行微调 ,只能使用top,left 我感觉他是相对于他之前的位置移动的
  • fixed(固定的):相对于浏览器窗口来定位 ,常用!!! ,位移之前位置不会被占用, 上下左右都可以使用, 小广告常用手法, 滚动条不断移,他的位置也不变 ,他会脱离文档流,漂浮于文档流上边,他这个上下左右是相对于边的位置,比如:top50px 不是向上移动50px ,而是元素相对于顶部边框距离50px 设置buttom也同样可以使用,而且拉动滚动条也不会变化位置

  • absolute(绝对的):元素相对position值不为static的一个祖先元素定 子元素依据祖先元素变化 祖先元素不能为static 依据谁变化,谁不可以为static(默认为static),发生在父子 或 祖先元素与后代元素之间的位移定位

    2. 定位布局

    top/bottom/left/right

    3. z-index

    用来设置元素 和 元素 的显示层数,正数 负数 都可以

    必须配合position使用

    过渡,变形

    1. 过渡

    过渡:元素由一种样式逐渐变为另一种样式

    属性:

  • transition-delay:设置过渡前的延时
  • transition-duration:设置过渡用时
  • transition-property:设置过渡参与的属性
  • transition-timing-function:过渡速率(linear匀速)
  • transition:简写形式(property duration timing-function delay)

    反向过渡:

    hover中设置的,粘贴到div中,就可以了

2. 变形

  • transform: 指定如何变形
  • transform: scaleX/Y(1.5) 缩放1.5倍
  • transform: rotate(360deg) 旋转360度 deg代表度数,配合过渡时间 效果很好
  • transform: skew(X轴角度,Y轴角度) 倾斜的角度
  • transform: translate(X轴距离,Y轴距离) 移动的距离