Skip to content

Latest commit

 

History

History
402 lines (379 loc) · 25.6 KB

Css.md

File metadata and controls

402 lines (379 loc) · 25.6 KB

CSS笔记

Tip

  • initial 重置某个属性为UA(浏览器标识)默认设置
  • inherit 继承父元素设置
  • -moz- 代表Firefox(Gecko内核)浏览器私有属性
    -ms-代表ie(ie内核)浏览器私有属性
    -webkit-代表safari、chrome(webkit内核)私有属性
    -o-代表opera浏览器私有属性
    私有前缀是为了CSS新属性兼容各浏览器老版本的方式,通过这种方式来提前支持新属性,待w3c公布了标准后,    
    再让新版浏览器支持不带私有前缀的写法。
    
  • text-align 只对块级元素有效(如div,p) vertical-align只对行内元素有效(如img,span)
  • vertical-align (自顶向下:top | text-top | middle | baseline | text-bottom |bottom )
  • 块级元素设置垂直居中 需要设置父级display:table 自身display:table-cell
  • background-repeat: space | round (可以定义两个值指定横向和竖向 space 固定 / round 调整)
  • text-transform: capitalize(首字母大写)/lowercase(小写)/uppercase(大写)/none
  • text-shadow: 左 上 清晰度 颜色
  • word-wrap:
    normal 默认换行(断点字换行,没有断点会一直排下去)
    break-word(在长单词或 URL 地址内部进行换行,不会截断单词,单词作为整体换行)
  • word-break(规定非中日韩文本的换行规则): normal/break-all (截断换行)/keep-all(只能在半角空格或连字符处换行)
      @font-face{
        font-family:myfont;
        src:url("...");
      }

选择器

选择器 例子 例子描述 CSS
.class .intro 选择 class="intro" 的所有元素。 1
#id #firstname 选择 id="firstname" 的所有元素。 1
* * 选择所有元素。 2
element p 选择所有 <p> 元素。 1
element,element div,p 选择所有 <div> 元素和所有 <p> 元素。 1
element element div p 选择 <div> 元素内部的所有 <p> 元素。 1
element>element div>p 选择父元素为 <div> 元素的所有 <p> 元素。 2
element+element div+p 选择紧接在 <div> 元素之后的所有 <p> 元素。 2
[attribute] [target] 选择带有 target 属性所有元素。 2
[attribute=value] [target=_blank] 选择 target="_blank" 的所有元素。 2
[attribute~=value] [title~=flower] 选择 title 属性包含单词 "flower" 的所有元素。 2
[attribute|=value] [lang | =en] 选择 lang 属性值以 "en" 开头的所有元素。 2
:link a:link 选择所有未被访问的链接。 1
:visited a:visited 选择所有已被访问的链接。 1
:active a:active 选择活动链接。 1
:hover a:hover 选择鼠标指针位于其上的链接。 1
:focus input:focus 选择获得焦点的 input 元素。 2
:first-letter p:first-letter 选择每个 <p> 元素的首字母。 1
:first-line p:first-line 选择每个 <p> 元素的首行。 1
:first-child p:first-child 选择属于父元素的第一个子元素的每个 <p> 元素。 2
:before p:before 在每个 <p> 元素的内容之前插入内容。 2
:after p:after 在每个 <p> 元素的内容之后插入内容。 2
:lang(language) p:lang(it) 选择带有以 "it" 开头的 lang 属性值的每个 <p> 元素。 2
element1~element2 p~ul 选择前面有 <p> 元素的每个
    元素。
3
[attribute^=value] a[src^="https"] 选择其 src 属性值以 "https" 开头的每个 <a> 元素。 3
[attribute$=value] a[src$=".pdf"] 选择其 src 属性以 ".pdf" 结尾的所有 <a> 元素。 3
[attribute*=value] a[src*="abc"] 选择其 src 属性中包含 "abc" 子串的每个 <a> 元素。 3
:first-of-type p:first-of-type 选择属于其父元素的首个 <p> 元素的每个 <p> 元素。 3
:last-of-type p:last-of-type 选择属于其父元素的最后 <p> 元素的每个 <p> 元素。 3
:only-of-type p:only-of-type 选择属于其父元素唯一的 <p> 元素的每个 <p> 元素。 3
:only-child p:only-child 选择属于其父元素的唯一子元素的每个 <p> 元素。 3
:nth-child(n) p:nth-child(2) 选择属于其父元素的第二个子元素的每个 <p> 元素。 3
:nth-last-child(n) p:nth-last-child(2) 同上,从最后一个子元素开始计数。 3
:nth-of-type(n) p:nth-of-type(2) 选择属于其父元素第二个 <p> 元素的每个 <p> 元素。 3
:nth-last-of-type(n) p:nth-last-of-type(2) 同上,但是从最后一个子元素开始计数。 3
:last-child p:last-child 选择属于其父元素最后一个子元素每个 <p> 元素。 3
:root :root 选择文档的根元素。(html) 3
:empty p:empty 选择没有子元素的每个 <p> 元素(包括文本节点)。 3
:target #news:target 选择当前活动的 #news 元素。 3
:enabled input:enabled 选择每个启用的 <input> 元素。 3
:disabled input:disabled 选择每个禁用的 <input> 元素 3
:checked input:checked 选择每个被选中的 <input> 元素。 3
:not(selector) :not(p) 选择非 <p> 元素的每个元素。 3
::selection ::selection 选择被用户选取的元素部分。 3

属性

动画属性(Animation)
属性 描述
@keyframes 规定动画。
animation 所有动画属性的简写属性,除了 animation-play-state 属性。
animation-name 规定 @keyframes 动画的名称。
animation-duration 规定动画完成一个周期所花费的秒或毫秒。
animation-timing-function 规定动画的速度曲线。
animation-delay 规定动画何时开始。
animation-iteration-count 规定动画被播放的次数。
animation-direction 规定动画是否在下一周期逆向地播放。
animation-play-state 规定动画是否正在运行或暂停。
animation-fill-mode 规定对象动画时间之外的状态。
背景属性(Background)
属性 描述
background 在一个声明中设置所有的背景属性。
background-attachment 设置背景图像是否固定或者随着页面的其余部分滚动。
background-color 设置元素的背景颜色。
background-image 设置元素的背景图像。
background-position 设置背景图像的开始位置。
background-repeat 设置是否及如何重复背景图像。
background-clip 规定背景的绘制区域。
background-origin 规定背景图片的定位区域。
background-size 规定背景图片的尺寸。
边框属性(Border 和 Outline)
属性 描述
border 在一个声明中设置所有的边框属性。
border-bottom 在一个声明中设置所有的下边框属性。
border-bottom-color 设置下边框的颜色。
border-bottom-style 设置下边框的样式。
border-bottom-width 设置下边框的宽度。
border-color 设置四条边框的颜色。
border-left 在一个声明中设置所有的左边框属性。
border-left-color 设置左边框的颜色。
border-left-style 设置左边框的样式。
border-left-width 设置左边框的宽度。
border-right 在一个声明中设置所有的右边框属性。
border-right-color 设置右边框的颜色。
border-right-style 设置右边框的样式。
border-right-width 设置右边框的宽度。
border-style 设置四条边框的样式。
border-top 在一个声明中设置所有的上边框属性。
border-top-color 设置上边框的颜色。
border-top-style 设置上边框的样式。
border-top-width 设置上边框的宽度。
border-width 设置四条边框的宽度。
outline 在一个声明中设置所有的轮廓属性。
outline-color 设置轮廓的颜色。
outline-style 设置轮廓的样式。
outline-width 设置轮廓的宽度。
border-bottom-left-radius 定义边框左下角的形状。
border-bottom-right-radius 定义边框右下角的形状。
border-image 简写属性,设置所有 border-image-* 属性。
border-image-outset 规定边框图像区域超出边框的量。
border-image-repeat 图像边框是否应平铺(repeated)、铺满(rounded)或拉伸(stretched)。
border-image-slice 规定图像边框的向内偏移。
border-image-source 规定用作边框的图片。
border-image-width 规定图片边框的宽度。
border-radius 简写属性,设置所有四个 border-*-radius 属性。
border-top-left-radius 定义边框左上角的形状。
border-top-right-radius 定义边框右下角的形状。
box-decoration-break
box-shadow 向方框添加一个或多个阴影。
Box 属性
属性 描述
overflow-x 如果内容溢出了元素内容区域,是否对内容的左/右边缘进行裁剪。
overflow-y 如果内容溢出了元素内容区域,是否对内容的上/下边缘进行裁剪。
overflow-style 规定溢出元素的首选滚动方法。
rotation 围绕由 rotation-point 属性定义的点对元素进行旋转。
rotation-point 定义距离上左边框边缘的偏移点。
Color 属性
属性 描述
color-profile 允许使用源的颜色配置文件的默认以外的规范。
opacity 规定书签的级别。
rendering-intent 允许使用颜色配置文件渲染意图的默认以外的规范。
内容分页媒体(Content for Paged Media)属性
属性 描述
bookmark-label 规定书签的标记。
bookmark-level 规定书签的级别。
bookmark-target 规定书签链接的目标。
float-offset 将元素放在 float 属性通常放置的位置的相反方向。
hyphenate-after 规定连字单词中连字符之后的最小字符数。
hyphenate-before 规定连字单词中连字符之前的最小字符数。
hyphenate-character 规定当发生断字时显示的字符串。
hyphenate-lines 指示元素中连续断字连线的最大数。
hyphenate-resource 规定帮助浏览器确定断字点的外部资源(逗号分隔的列表)。
hyphens 设置如何对单词进行拆分,以改善段落的布局。
image-resolution 规定图像的正确分辨率。
marks 向文档添加裁切标记或十字标记。
string-set
CSS 尺寸属性(Dimension)
属性 描述
height 设置元素高度。
max-height 设置元素的最大高度。
max-width 设置元素的最大宽度。
min-height 设置元素的最小高度。
min-width 设置元素的最小宽度。
width 设置元素的宽度。
可伸缩框属性(Flexible Box)
属性 描述
box-align 规定如何对齐框的子元素。
box-direction 规定框的子元素的显示方向。
box-flex 规定框的子元素是否可伸缩。
box-flex-group 将可伸缩元素分配到柔性分组。
box-lines 规定当超出父元素框的空间时,是否换行显示。
box-ordinal-group 规定框的子元素的显示次序。
box-orient 规定框的子元素是否应水平或垂直排列。
box-pack 规定水平框中的水平位置或者垂直框中的垂直位置。
CSS 字体属性(Font)
属性 描述
font 在一个声明中设置所有字体属性。
font-family 规定文本的字体系列。
font-size 规定文本的字体尺寸。
font-size-adjust 为元素规定 aspect 值。
font-stretch 收缩或拉伸当前的字体系列。
font-style 规定文本的字体样式。
font-variant 规定是否以小型大写字母的字体显示文本。
font-weight 规定字体的粗细。
内容生成(Generated Content)
属性 描述
content 与 :before 以及 :after 伪元素配合使用,来插入生成内容。
counter-increment 递增或递减一个或多个计数器。
counter-reset 创建或重置一个或多个计数器。
quotes 设置嵌套引用的引号类型。
crop 允许被替换元素仅仅是对象的矩形区域,而不是整个对象。
move-to 从流中删除元素,然后在文档中后面的点上重新插入。
page-policy 确定元素基于页面的 occurrence 应用于计数器还是字符串值。
Grid 属性
属性 描述
grid-columns 规定网格中每个列的宽度。
grid-rows 规定网格中每个列的高度。
Hyperlink 属性
属性 描述
target 简写属性,设置target-name、target-new以及target-position属性。
target-name 规定在何处打开链接(链接的目标)。
target-new 规定目标链接在新窗口还是在已有窗口的新标签页中打开。
target-position 规定在何处放置新的目标链接
CSS 列表属性(List)
属性 描述
list-style 在一个声明中设置所有的列表属性。
list-style-image 将图象设置为列表项标记。
list-style-position 设置列表项标记的放置位置。
list-style-type 设置列表项标记的类型。
marker-offset
CSS 外边距属性(Margin)
属性 描述
margin 在一个声明中设置所有外边距属性。
margin-bottom 设置元素的下外边距。
margin-left 设置元素的左外边距。
margin-right 设置元素的右外边距。
margin-top 设置元素的上外边距。
Marquee 属性
属性 描述
marquee-direction 设置移动内容的方向。
marquee-play-count 设置内容移动多少次。
marquee-speed 设置内容滚动得多快。
marquee-style 设置移动内容的样式。
多列属性(Multi-column)
属性 描述
column-count 规定元素应该被分隔的列数。
column-fill 规定如何填充列。
column-gap 规定列之间的间隔。
column-rule 设置所有 column-rule-* 属性的简写属性。
column-rule-color 规定列之间规则的颜色。
column-rule-style 规定列之间规则的样式。
column-rule-width 规定列之间规则的宽度。
column-span 规定元素应该横跨的列数。
column-width 规定列的宽度。
columns 规定设置 column-width 和 column-count 的简写属性。
CSS 内边距属性(Padding)
属性 描述
padding 在一个声明中设置所有内边距属性。
padding-bottom 设置元素的下内边距。
padding-left 设置元素的左内边距。
padding-right 设置元素的右内边距。
padding-top 设置元素的上内边距。
分页媒体(Paged Media)属性
属性 描述
fit 示意如何对width和height属性均不是auto的被替换元素进行缩放。
fit-position 定义盒内对象的对齐方式。
image-orientation 规定用户代理应用于图像的顺时针方向旋转。
page 规定元素应该被显示的页面特定类型。
size 规定页面内容包含框的尺寸和方向。
CSS 定位属性(Positioning)
属性 描述
bottom 设置定位元素下外边距边界与其包含块下边界之间的偏移。
clear 规定元素的哪一侧不允许其他浮动元素。
clip 剪裁绝对定位元素。
cursor 规定要显示的光标的类型(形状)。
display 规定元素应该生成的框的类型。
float 规定框是否应该浮动。
left 设置定位元素左外边距边界与其包含块左边界之间的偏移。
overflow 规定当内容溢出元素框时发生的事情。
position 规定元素的定位类型。
right 设置定位元素右外边距边界与其包含块右边界之间的偏移。
top 设置定位元素的上外边距边界与其包含块上边界之间的偏移。
vertical-align 设置元素的垂直对齐方式。
visibility 规定元素是否可见。
z-index 设置元素的堆叠顺序。
CSS 打印属性(Print)
属性 描述
orphans 设置当元素内部发生分页时必须在页面底部保留的最少行数。
page-break-after 设置元素后的分页行为。
page-break-before 设置元素前的分页行为。
page-break-inside 设置元素内部的分页行为。
widows 设置当元素内部发生分页时必须在页面顶部保留的最少行数。
CSS 表格属性(Table)
属性 描述
border-collapse 规定是否合并表格边框。
border-spacing 规定相邻单元格边框之间的距离。
caption-side 规定表格标题的位置。
empty-cells 规定是否显示表格中的空单元格上的边框和背景。
table-layout 设置用于表格的布局算法。
CSS 文本属性(Text)
属性 描述
color 设置文本的颜色。
direction 规定文本的方向 / 书写方向。
letter-spacing 设置字符间距。
line-height 设置行高。
text-align 规定文本的水平对齐方式。
text-decoration 规定添加到文本的装饰效果。
text-indent 规定文本块首行的缩进。
text-shadow 规定添加到文本的阴影效果。
text-transform 控制文本的大小写。
unicode-bidi 设置文本方向。
white-space 规定如何处理元素中的空白。
word-spacing 设置单词间距。
hanging-punctuation 规定标点字符是否位于线框之外。
punctuation-trim 规定是否对标点字符进行修剪。
text-align-last 设置如何对齐最后一行或紧挨着强制换行符之前的行。
text-emphasis 向元素的文本应用重点标记以及重点标记的前景色。
text-justify 规定当 text-align 设置为 "justify" 时所使用的对齐方法。
text-outline 规定文本的轮廓。
text-overflow 规定当文本溢出包含元素时发生的事情。
text-shadow 向文本添加阴影。
text-wrap 规定文本的换行规则。
word-break 规定非中日韩文本的换行规则。
word-wrap 允许对长的不可分割的单词进行分割并换行到下一行。
2D/3D 转换
属性 描述
transform 向元素应用 2D 或 3D 转换。
transform-origin 允许你改变被转换元素的位置。
transform-style 规定被嵌套元素如何在 3D 空间中显示。
perspective 规定 3D 元素的透视效果。
perspective-origin 规定 3D 元素的底部位置。
backface-visibility 定义元素在不面对屏幕时是否可见
过渡属性(Transition)
属性 描述
transition 简写属性,用于在一个属性中设置四个过渡属性。
transition-property 规定应用过渡的 CSS 属性的名称。
transition-duration 定义过渡效果花费的时间。
transition-timing-function 规定过渡效果的时间曲线。
transition-delay 规定过渡效果何时开始。
用户界面属性(User-interface)
属性 描述
appearance 允许您将元素设置为标准用户界面元素的外观
box-sizing 允许您以确切的方式定义适应某个区域的具体内容。
icon 为创作者提供使用图标化等价物来设置元素样式的能力。
nav-down 规定在使用 arrow-down 导航键时向何处导航。
nav-index 设置元素的 tab 键控制次序。
nav-left 规定在使用 arrow-left 导航键时向何处导航。
nav-right 规定在使用 arrow-right 导航键时向何处导航。
nav-up 规定在使用 arrow-up 导航键时向何处导航。
outline-offset 对轮廓进行偏移,并在超出边框边缘的位置绘制轮廓。
resize 规定是否可由用户对元素的尺寸进行调整。
单位
单 位 描述
% 百分比
in 英寸
cm 厘米
mm 毫米
em 1em 等于当前的字体尺寸。 2em 等于当前字体尺寸的两倍
ex 一个 ex 是一个字体的 x-height。 (x-height 通常是字体尺寸的一半。)
pt 磅 (1 pt 等于 1/72 英寸)
pc 12 点活字 (1 pc 等于 12 点)
px 像素 (计算机屏幕上的一个点)
rem 用法与em类似,受根节点影响(em 受父节点影响)