杂项

yuhuo2022-03-07CssCss属性

综合

content

content: <内容>#

特定作用元素
  • ::before
  • ::after

user-select

user-select: <文本选中效果> 继承

  • auto:自动 默认值
  • text:可以选择文本
  • all:可以选择文本,但必须全选
  • none:不能选择文本

cursor

cursor: <光标> 继承

  • auto:自动 默认值
  • default:默认
  • pointer:手指
  • move:移动
  • help:带问号
  • crosshair:加号
  • progress:带加载
  • text:文本编辑
  • not-allowed:禁用
  • wait:加载中
  • n-resize:上下拉动
  • w-resize:左右拉动
  • nw-resize:斜拉动

pointer-events

pointer-events: <指针事件>

  • auto:自动 默认值
  • none:无(即不响应指针事件)

filter

filter: <滤镜>#

clip-path

clip-path: <裁剪路径>

image-rendering

image-rendering: <图片缩放渲染算法>

  • auto:平滑处理 默认值
  • pixelated:放大时单纯放大像素点,缩小时同 auto
  • -webkit-optimize-contrast:优化对比度,即介于 auto 和 pixelated 之间

image-rendering 图片缩放渲染算法 - JSRUN.NETopen in new window

-webkit-box-reflect

-webkit-box-reflect: none | [<倒影方向> <倒影偏移>? <倒影遮罩图>?]

  • none:无 默认值

倒影方向

  • above:上
  • below:下
  • left:左
  • right:右

倒影偏移

  • 长度值:0px 默认值
  • 百分值:方向为上下时,相对于自身宽度;方向为左右时,相对于自身高度。

倒影遮罩图

注意

遮罩图只是应用图片的透明度到倒影中,与图片色值没有关系。

-webkit-tap-highlight-color

-webkit-tap-highlight-color: <点击高亮色> 继承

注意

只有 IOS 上有效,默认是灰色半透明,一般需要设为全透明。

-webkit-touch-callout

-webkit-touch-callout: <长按标注>

  • default:默认 默认值
  • none:无

注意

只有 IOS 上有效,a 元素长按在弹窗打开链接,img 元素长按显示操作菜单(复制,保存等)。

-webkit-overflow-scrolling

-webkit-overflow-scrolling: <滚动效果>

  • auto:普通滚动,滑动结束时滚动立即停止
  • touch:惯性滚动,滑动结束时滚动逐渐减弱至停止

注意

据说是为了设置 IOS 的惯性滚动,但是实测无效,默认就是惯性滚动,猜测可能是新版的 IOS 不需要设置该属性了。

变换

transfrom

transfrom: <变换>#

说明

x 轴为水平轴,正向往右;y 轴为垂直轴,正向往下;z 轴为深度轴,正向往外;

多种变换叠加解析

  1. rotateX(90deg) translateY(100px) 旋转 + 平移

在原点围绕 X 坐标轴向上旋转 90deg,生成新的坐标系(即新的 y 轴是原本的 z 轴,新的 z 轴是原本的 -y 轴)然后根据新的坐标系在 y 轴正向平移;

  1. scaleX(2) translateX(100px) 缩放 + 平移

在原点向 X 轴的拉伸刻度比例为原本的2倍(即 1px 拉伸到 2px 的长度),然后向 X 轴正向平移100px,由于刻度放大了,实际平移了 200px。

  1. rotateX(90deg) scaleY(2) 旋转 + 缩放

旋转后,在生成新的坐标系的 y 轴缩放。

  1. scaleZ(2) rotateX(90deg) 缩放 + 旋转

在 z 轴拉伸刻度比例为原本 2 倍,再旋转,旋转时刻度比例缩放保持在原本的坐标轴上,旋转后原本的 z 轴变成现在的 y 轴,即现在的 y 轴的刻度比例是正常的 2 倍。(就是第3点和第4点最后效果相同)

transform 多种变换叠加 - JSRUN.NETopen in new window

注意

使用变换会使子元素的fixed定位失效;

transform-style

transform-style: <变换类型>#

  • flat:二维平面 默认值
  • preserve-3d:三维空间

注意

transform-style 作用在变换元素的父元素上。

父元素为二维平面时,子元素进行3D变换,只是将各子元素分别变换后的投影贴到父元素上,子元素相互之间,子元素和父元素之间都不会存在空间遮挡关系。旋转父元素,可验证父元素及子元素是处在一个平面中。

父元素为三维空间时,子元素进行3D变换,是真实的空间操作,会存在相互交叉遮挡,旋转父元素,可验证父元素及内部变换元素是处在一个空间中。

transform-style 3D测试 - JSRUN.NETopen in new window

transform-origin

transform: <变换原点x坐标> <变换原点y坐标> <变换原点z坐标>

变换原点 x 坐标

  • center:中间 默认值
  • left:最左边
  • right:最右边
  • 长度值:左边偏移
  • 百分值:左边偏移,相对于自身宽度

变换原点 y 坐标

  • center:中间 默认值
  • top:最上边
  • bottom:最下边
  • 长度值:上边偏移
  • 百分值:上边偏移,相对于自身高度

变换原点 z 坐标

长度值:上边偏移,0 默认值

perspective

perspective: <透视距离>

注意

perspective: 800px;perspective-origin: center;作用在变换元素的父元素上,指距离父元素 800px 正对着透视原点位置透视到父元素上。

transform: perspective(800px); 作用在变换元素上,指距离父元素 800px 正对着当前元素的中心位置透视到父元素上。

建议不要使用 transform: perspective(),更不要2种透视方式同时用,很容易混乱。

perspective-origin

perspective: <透视原点x坐标> <透视原点y坐标>

透视原点 x 坐标

  • center:中间 默认值
  • left:最左边
  • right:最右边
  • left <长度值|百分值>:左边偏移
  • right <长度值|百分值>:右边偏移
  • 长度值:左边偏移
  • 百分值:左边偏移,相对于自身宽度

透视原点 y 坐标

  • center:中间 默认值
  • top:最上边
  • bottom:最下边
  • top <长度值|百分值>:上边偏移
  • bottom <长度值|百分值>:下边偏移
  • 长度值:上边偏移
  • 百分值:上边偏移,相对于自身高度

注意

透视原点 x 坐标 left <长度值|百分值> / right <长度值|百分值> 必须和 y 坐标 top <长度值|百分值> / bottom <长度值|百分值> 搭配使用,否则会无效。

滚动

scrollbar-gutter

scrollbar-gutter: <滚动条占位>

  • auto:自动,即滚动条存在时占位,否则不占位 默认值
  • stable:固定占位

overscroll-behavior-x

overscroll-behavior-x: <水平滚动至边界行为>

  • auto:自动 默认值
  • contain:阻止滚动冒泡
  • none:阻止滚动冒泡和默认行为

overscroll-behavior-y

overscroll-behavior-x: <垂直滚动至边界行为>

  • auto:自动 默认值
  • contain:阻止滚动冒泡
  • none:阻止滚动冒泡和默认行为

overscroll-behavior

overscroll-behavior: <overscroll-behavior-x> <overscroll-behavior-y>?

说明

<overscroll-behavior-y> 省略时值同 <overscroll-behavior-x>

替换元素

object-fit

object-fit: <内容适配>

  • fill:拉伸填充 默认值
  • contain:等比缩放放入容器
  • cover:等比缩放覆盖容器
  • none:保持内容原本宽高
  • scale-down:等于 none 或 contain 中尺寸更小者
特定作用元素

object-position

object-fit: <内容水平定位> <内容垂直定位>?

可替换元素内容水平定位

  • center:中间 默认值
  • left:最左边
  • right:最右边
  • left <长度值|百分值>:左边偏移
  • right <长度值|百分值>:右边偏移
  • 长度值:左边偏移
  • 百分值:左边偏移,相对于自身宽度

可替换元素内容垂直定位

  • center:中间 默认值
  • top:最上边
  • bottom:最下边
  • top <长度值|百分值>:上边偏移
  • bottom <长度值|百分值>:下边偏移
  • 长度值:上边偏移
  • 百分值:上边偏移,相对于自身高度

注意

  • 水平定位的 “长度值 / 百分值” 必须和垂直定位的 “长度值 / 百分值” 搭配使用,否则会无效;
特定作用元素

运动路径

offset-path

offset-path: <运动路径>

offset-rotate

offset-rotate: <运动角度>

  • auto:跟随运动路径朝向 默认值
  • 角度值

offset-distance

offset-distance: <运动距离>

offset

offset: <offset-path> [<offset-rotate> || <offset-distance>]?

表格

table-layout

table-layout: <表格布局>

  • auto:根据列中各个单元格的宽度和内容长度自动综合分配列宽 默认值
  • fixed:根据列中的首行单元格的宽度分配列宽,如首行单元格无设宽度则平分
特定作用元素

border-collapse

border-collapse: <单元格边框模式>

  • separate:分离边框模式 默认值
  • collapse:合并边框模式
特定作用元素

border-spacing

border-spacing: <单元格横纵向间距> | <单元格横向间距> <单元格纵向间距>

注意

border-collapse: collapse; 时,border-spacing 属性无效。

特定作用元素

empty-cells

empty-cells: <空单元格显示>

  • show:显示 默认值
  • hide:隐藏

注意

border-collapse: collapse; 时,empty-cells 属性失效。

特定作用元素

caption-side

caption-side: <标题位置>

  • top:表格顶部 默认值
  • bottom:表格底部
特定作用元素

列表

list-style-type

list-style-type: <列表标记类型> 继承

  • none:无
  • disc:实圆圈,在 <ul> 中作为默认值被 <li> 继承
  • circle:空圆圈
  • square:方块
  • decimal:十进制数字,在 <ol> 中作为默认值被 <li> 继承
  • decimal-leading-zero:0开头的十进制数字
  • lower-roman:小写罗马数字
  • upper-roman:大写罗马数字
  • lower-alpha:小写字母
  • upper-alpha:大写字母
特定作用元素

list-style-image

list-style-image: <列表标记图片> 继承

注意

当 list-style-image 属性生效时,list-style-type 属性失效。

特定作用元素

list-style-position

list-style-position: <列表标记位置> 继承

  • outside:在 <li> 外面 默认值
  • inside:在 <li> 里面
特定作用元素

list-style

list-style: <list-style-type> || <list-style-image> || <list-style-position> 继承

特定作用元素

SVG

fill

fill: <填充色>

特定作用元素

fill-opacity

fill-opacity: <填充透明度>

  • 数值:0~1,1 默认值
  • 百分值
特定作用元素

fill-rule

fill-rule: <填充规则>

  • nonzero:非零规则 默认值
  • evenodd:奇偶规则

css 填充规则:nonzero 和 evenoddopen in new window

特定作用元素

stroke

stroke: <描边色>

特定作用元素

stroke-opacity

stroke-opacity: <描边透明度>

  • 数值:0~1,1 默认值
  • 百分值
特定作用元素

stroke-width

stroke-width: <描边宽度>

  • 长度值,1px 默认值
  • 百分值:当相svg 视口宽高相等时,相对于视口宽度或高度;当不相等时,暂不知如何计算。
特定作用元素

stroke-dasharray

stroke-dasharray: <描边虚线间隔>#

特定作用元素

stroke-dashoffset

stroke-dashoffset: <描边虚线偏移>#

特定作用元素

stroke-linecap

stroke-linecap: <描边末端形状>

  • butt:无突出 默认值
  • round:突出圆形
  • square:突出方形
特定作用元素

stroke-linejoin

stroke-linejoin: <描边转角形状>

  • miter:斜接 默认值
  • bevel:斜面
  • round:圆形
特定作用元素

stop-color

stop-color: <结点色>

特定作用元素

stop-opacity

stop-opacity: <结点透明度>

  • 数值:0~1,1 默认值
  • 百分值
特定作用元素
Last Updated 2024/3/14 09:51:53