CSS其实不难,但是做好很难。。。。。本文为备忘录,记录易忘的概念知识点和样式记录
css是一种描述html文档样式的语言,描述了如何显示html元素。
CSS简介
css是层叠样式表(cascading style sheets)(学习一下英文嘿嘿。。),描述了如何在屏幕、智障(咳咳纸张。。)或其他媒体上显示HTML元素,节省了大量工作,开发者对于同种风格的页面减少了很多的重复代码,存储在css文件当中
css基础知识
css语法
css规则集(rule-set)由选择器和声明块组成
- 选择器指向您需要设置样式的 HTML 元素。
- 声明块包含一条或多条用分号分隔的声明。
- 每条声明都包含一个 CSS 属性名称和一个值,以冒号分隔。
- 多条 CSS 声明用分号分隔,声明块用花括号括起来。
css的选择器
CSS 选择器用于“查找”(或选取)要设置样式的 HTML 元素。
五类选择器
- 简单选择器(根据名称、id、类来选取元素)
- 组合器选择器(根据它们之间的特定关系来选取元素)
- 伪类选择器(根据特定状态选取元素)
- 伪元素选择器(选取元素的一部分并设置其样式)
- 属性选择器(根据属性或属性值来选取元素)
通用使用 * 使用 , 进行同用一个样式
优先级:
- 行内样式(在 HTML 元素中)
- 内部样式表
- 外部
- 浏览器默认样式
颜色
十六位进制的颜色是HEX值
rgb是(255,255,255)
轮廓
轮廓是在元素周围绘制的一条线,在边框之外,以凸显元素。
- outline-style
- dotted - 定义点状的轮廓。
- dashed - 定义虚线的轮廓。
- solid - 定义实线的轮廓。
- double - 定义双线的轮廓。
- groove - 定义 3D 凹槽轮廓。
- ridge - 定义 3D 凸槽轮廓。
- inset - 定义 3D 凹边轮廓。
- outset - 定义 3D 凸边轮廓。
- none - 定义无轮廓。
- hidden - 定义隐藏的轮廓。
- outline-color
- outline-width
- outline-offset //轮廓偏移
- outline
文本
- text-align 属性用于设置文本的水平对齐方式。
- direction 和 unicode-bidi 属性可用于更改元素的文本方向:
- vertical-align 属性设置元素的垂直对齐方式。
- text-decoration: none; 通常用于从链接上删除下划线:text-decoration 属性用于设置或删除文本装饰。比如各种删除线下划线线框等
- text-transform 属性用于指定文本中的大写和小写字母。
- text-indent 属性用于指定文本第一行的缩进:
- letter-spacing 属性用于指定文本中字符之间的间距。
- line-height 属性用于指定行之间的间距:
- text-shadow 属性为文本添加阴影。
字体
- font-family 属性规定文本的字体。
- font-style 属性主要用于指定斜体文本。
- font-weight 属性指定字体的粗细:
- font-variant 属性指定是否以 small-caps 字体(小型大写字母)显示文本
- font-size 属性设置文本的大小
- 可以使用 vw 单位设置文本大小,它的意思是“视口宽度”(“viewport width”)。
链接
- a:link - 正常的,未访问的链接
- a:visited - 用户访问过的链接
- a:hover - 用户将鼠标悬停在链接上时
- a:active - 链接被点击时
- a:hover 必须 a:link 和 a:visited 之后
a:active 必须在 a:hover 之后
a:hover 必须 a:link 和 a:visited 之后
a:active 必须在 a:hover 之后
表格
上例中的表格拥有双边框。这是因为 table 和 和 元素都有单独的边框。border-collapse 属性设置是否将表格边框折叠为单一边框:
- 在 元素上使用 :hover 选择器,以突出显示鼠标悬停时的表格行:
css 布局
- display 属性规定是否/如何显示元素。
- position 属性规定应用于元素的定位方法的类型。
- position: static; HTML 元素默认情况下的定位方式为 static(静态)。静态定位的元素不受 top、 bottom、left 和 right 属性的影响。
- position: relative; 的元素相对于其正常位置进行定位。设置相对定位的元素的 top、right、bottom 和 left 属性将导致其偏离其正常位置进行调整。不会对其余内容进行调整来适应元素留下的任何空间。
- position: fixed;
- position: absolute; 的元素相对于最近的定位祖先元素进行定位
- overflow 属性指定在元素的内容太大而无法放入指定区域时是剪裁内容还是添加滚动条。
- 要使块元素(例如
)水平居中,请使用 margin: auto;。
- 如果仅需在元素内居中文本,请使用 text-align: center;:
css组合器
- CSS 中有四种不同的组合器:后代选择器 (空格)、子选择器 (>)、相邻兄弟选择器 (+)、通用兄弟选择器 (~)
css 伪类
伪类用于定义元素的特殊状态。
- 设置鼠标悬停在元素上时的样式、为已访问和未访问链接设置不同的样式、设置元素获得焦点时的样式。
CSS - :first-child 伪类
:first-child 伪类与指定的元素匹配:该元素是另一个元素的第一个子元素。
CSS - :lang 伪类
:lang 伪类允许您为不同的语言定义特殊的规则。
相关的属性手册和用法见文档