• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
dzw9
博客园    首页    新随笔    联系   管理    订阅  订阅
CSS

CSS (Cascading Style Sheets,层叠样式表)
是一种用来为结构化文档(如 HTML 文档或 XML 应用)添加样式(字体、间距和颜色等)的计算机语言,CSS 文件扩展名为 .css

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

CSS声明总是以分号 ; 结束,声明总以大括号 {} 括起来:

p {color:red;text-align:center;}

CSS注释以 /* 开始, 以 */ 结束

/*这是个注释*/

1. 选择器

1. id 选择器

以 "#" 来定义,配合JavaScript使用。同一个id在一个页面只能用一次。
以下应用于元素属性 id="para":

#para
{
    text-align:center;
    color:red;
}

2. 类选择器:标签添加class="类名" 定义.class,方便查找标签且差异化显示。

一个标签可以使用多个类名,用空格隔开

.red {color:red;}
.center {text-align:center;}
<div class="red center"></div>

3. 标签选择器:p,h1,div,a,img

所有的 p 元素使用 class="center" 让该元素的文本居中:

p.center {text-align:center;}

4. 通配符选择器

* 不需要调用,自动设置所有标签

* {color:red;}

5. 复合选择器

选择器 方法 备注
后代选择器 div span 选择所有后代元素
子代选择器 div > span 只选择下一级元素
并集选择器 p,span,div 逗号隔开
交集选择器 p.class

6. 伪类选择器

属性值 说明
a:link 访问前
a:visited 访问后
a:hover 鼠标悬停状态
a:active 点击时

必须按lvha顺序写,一般常用hover鼠标悬停时状态

2.CSS创建

1. 外部样式表(External style sheet)

在使用外部样式表的情况下,你可以通过改变一个文件来改变整个站点的外观。每个页面使用 <link> 标签链接到样式表。 <link> 标签在(文档的)头部,rel:关系样式表:

<head>
<link rel="stylesheet" type="text/css" href="mystyle.css">
</head>

2. 内部样式表(Internal style sheet)

当单个文档需要特殊的样式时,就应该使用内部样式表。在title下面,你可以使用 style 标签在文档头部定义内部样式表:

<head>
<style>
hr {color:sienna;}
p {margin-left:20px;}
body {background-image:url("images/back40.gif");}
</style>
</head>

3.内联样式(Inline style)

当样式仅需要在一个元素上应用一次时。要使用内联样式,你需要在相关的标签内使用样式(style)属性。结合JavaScript使用

<p style="color:sienna;margin-left:20px">这是一个段落。</p>

4. 多重样式优先级

(内联样式)Inline style > (内部样式)Internal style sheet >(外部样式)External style sheet > 浏览器默认样式

3.CSS背景

描述 属性 备注
背景色 background-color bgc
背景图 background-image:url bgi
背景图平铺方式 background-repeat no-repeat不平铺,repeat默认平铺,repeat-x水平平铺,repeat-y垂直平铺
背景图位置 background-position:水平 垂直 left,right,center,top,bottom,+-50px
背景图大小 background-size:cover/contain/100%宽度/50px
背景图固定 background-attachment:fixed
背景图复合属性 background:color url no-repeat right center/cover fixed

浏览器图片默认平铺(复制)
(0,0)为左上角(left,top)
只写一个关键字,另一个方向默认居中
只写一个值表示水平方向,垂直默认居中

4.文本格式

描述 属性 备注
大小 font-size:32px/2em/200%; 谷歌默认16px
粗细 font-weight:700/bold; 400-normal,700-bold
倾斜 font-style:normal/italic/oblique; 清除文字倾斜效果
行间距 line-height:2; 数字为倍数,20px
字体族 font-family:宋体,楷体; 从左向右查找,最后设置一个字体族名
字体复合属性 font:normal 400 30px/2 宋体 简化代码,字号和字体必写
文本缩进 text-indent:50px/2em; 1em缩进一个字
文本对齐 text-align:left/center/right 内容水平对齐方式
修饰线 text-decoration:none/underline/line-through/overline 下划线,删除线,上划线
颜色 color:#FF0000/RGB(255,0,0)/rgba(r,g,b,a)/red 红绿蓝透明度
文本转换 text-transform:uppercase/lowercase/capitalize; 大写/小写/首字母大写
  • 行间距=文本高度+上下间距,设置单行文字垂直居中:行高=高度
  • 文本对齐方式 h1 {text-align:center/right/justify;}
    当text-align设置为"justify",每一行被展开为宽度相等,左,右外边距是对齐
  • 文本修饰 a {text-decoration:none;} 用于删除链接的下划线

5. 结构伪类选择器

选择器 说明 备注
li:first-child 第一个li元素
li:last-child 最后一个li元素
li:nth-child(n) 第n个li元素 2n+1倍数选择,n+5表示5以后,-n+5为5以前

6. 伪元素选择器

虚拟元素用于摆放装饰性内容
必须设置content""内容,没有留空,默认行内显示,权重等于标签选择器。

选择器 说明
E::before 在E元素最前面添加一个伪元素
E::after 在E元素最后面添加一个伪元素

7. 盒子模型

内容区域-width、height
内边距padding 内容与盒子边缘
边框线border 外边距margin在盒子外面
image

7.1 border边框线(bd)

边框线粗细 线条样式,颜色,不区分顺序

  • 简写属性 border:width style color
border属性值 说明 备注
width
color
style none默认无边框,dotted点线边框,dashed虚线边框,solid实线边框,double两个边框,groove 3D沟槽边框,ridge 3D脊边框,inset 3D嵌入边框,outset 3D突出边框,hidden隐藏
border-top/right/bottom/left :width style color 单独设置各边
border-radius:50px/50% 设置外边框为圆角 四值从左上角开始赋值

正圆设置:正方形盒子设置圆角为宽高的一半
胶囊形状:长方形盒子设置圆角为高的一半

7.2 内边距padding

设置内容与盒子边缘之间距离,属性名:padding、padding-top

div {
    padding:30px;
    padding-top/right/bottom/left:50px;
    padding:10px 20px 30px 40px;/*四值 上右下左*/
    padding:10px 20px 40px;/*三值 上 左右 下*/
    padding:10px 20px;/*两值 上下 左右 顺时针没有取对面*/
}

7.3 尺寸计算

盒子尺寸=内容尺寸+border尺寸+padding尺寸
内减模式,padding和border不会增大盒子:box-sizing:border-box

7.4 margin外边距

拉开两个盒子的距离,与padding属性值相同,不会撑大盒子。
margin 没有背景颜色,是完全透明的。

image

margin:0 auto;自动居中

* {
  margin: 0;
  padding: 0;
  box-sizing:border-box;
}  /*移除默认内外边距设置*/

li {
list-style:none;
} /*去掉列表符号*/
  • 外边距合并现象:垂直排列的兄弟元素,上下margin合并(取大的)
  • 塌陷问题:父子级的标签,子级的添加上外边距塌陷,导致父级一起向下移动
    三种解决办法:取消子级margin设置父级padding、box-sizing,border-top,overflow:hidden,

7.5 溢出内容

overflow:hidden隐藏、scroll滚动条、auto溢出显示滚动条

7.6 行内元素内外边距问题

行内元素添加margin和padding,无法改变元素垂直位置,可以添加line-height改变

7.7 阴影效果

默认外阴影,内阴影inset
box-shadow:x 轴偏移量 Y 轴偏量 模糊半径 扩散半径 颜色 内外阴影
box-shadow:2px 5px 10px 1px rgba(0,0,0,5) inset;

8. flex

8.1 浮动

1 说明 特效
标准流 标签在页面默认排布规则,块元素独占一行,行内元素一行显示多个
浮动,让块元素水平排列 float:left/right 顶对齐且具备行内块模式特点,浮动的盒子会脱离标准,父级宽度不够会换行
清除浮动 1.在父元素内容最后添加一个块级元素设置属性clear:both 父级没有高度子级无法撑开父级高度

浮动本质效果是实现图文混排效果

.clearfix::after {			/*清除浮动方法2:单伪元素法*/
content:"";
display:block;
clear:both;
}

.clearfix::before,
.clearfix::after {
content:"";
display:table;
}
.clear::after {
clear:both;
}						/*方法3:双伪元素法*/

方法四:父元素添加 overflow:hidden

8.2 flex布局

不会产生浮动布局中脱标现象,布局网页更简单,更灵活。
设置方式:给父元素设置flex,子元素可以自动挤压或拉伸
组成部分:弹性容器,弹性盒子,主轴默认在水平方向,侧轴在垂直方向

描述 属性 备注
创建flex容器 display:flex;
主轴对齐 justify-content:space-between;
侧轴对齐 align-items 控制容器内所有盒子
侧轴对齐 align-self:stretch拉伸至铺满容器、center,first-start,first-end 单独控制某个盒子
修改主轴方向 flex-direction:row/column/row-reverse/cloumn-reverse 水平、垂直、反方向
弹性伸缩比 flex:2 控制主轴,占用父级剩余尺寸的份数
弹性盒子换行 flex-wrap:wrap换行、默认nowrap
行对齐 align-content 属性值同主轴对齐,单行盒子不生效

主轴默认靠内容撑开,侧轴默认拉伸,默认所有盒子在一行

justify-content属性值 效果
flex-start 默认值,左对齐
flex-end 右对齐
center 居中
space-between 间距均分在盒子之间
space-around 间距均分在盒子两侧
space-evenly 盒子与容器间距相等

9. CSS高级技巧

9.1 定位

position属性值 说明 使用方法
relative 相对定位 不脱标,加上方向属性top等
absolute 绝对定位 脱标,行内块,子集绝对定位,父级相对定位
fixed 固定定位 脱标,行内块,加方位属性
div {
position:relative/absolute	/*相对定位-绝对定位*/
top:100px			/*参照原来位置移动,不脱标,显示模式特点不变*/

/*实现定位居中: 水平垂直边偏移50%,子集向左上移动自身尺寸一半*/
position:absolute;
left:50%;
top:50%;
margin-left:-275px;
margin-top:-127px;

transform:translate(-50%,-50%);		/*或者transform实现*/
}

堆叠层级z-index:1;
绝对定位后,默认按书写顺序后者居上,取整数,默认为0,越大越靠上.

  • CSS精灵
    也叫CSS Sprites,把背景图片整合到一张图片中,再通过background-position精确定位,用于复杂多色图片
    创建盒子尺寸与小图尺寸相同,设置背景图为精灵图,添加background-position属性改变位置,属性值取负的左上角坐标

  • 字体图标
    展示的是图标,本质是字体,常用于单色图片,灵活修改尺寸、颜色,体积小渲染快,降低服务器请求次数,兼容性高,先下载再使用
    字体图标库
    加入购物车--添加至项目--下载至本地--引入iconfont.css文件,打开html文件使用fontclass图案下的类名

标签使用字体图标类名 iconfont基本样式,icon-xxx图标对应的类名
上传.svg矢量图生成字体

特效 方法 备注
垂直对齐 vertical-align:baseline/top/middle/bottom 图片img的底下有空白,转块可消除
过渡效果 transition:all 1s; 可以写具体的属性也可以为all,设置给元素本身
透明度 设置整个元素的透明度,包含背景和内容 opacity:0完全透明-1不透明;
光标类型 cursor:default/pointer手型/text/move
轮播图 定位+字体图标+felx布局

9.表格Table

table, th, td {border: 1px solid black;}

有双边框是因为表和th/ td元素有独立的边界,border-collapse属性显示一个表的单个边框

table {border-collapse:collapse;}
table,th, td {border: 1px solid black;}

垂直对齐 vertical-align:bottom/top/middle

实例

div {
    width: 300px;
    border: 25px solid green;
    padding: 25px;
    margin: 25px;
    background-color: red;
}

300px (宽)+ 50px (左 + 右填充)+ 50px (左 + 右边框)+ 50px (左 + 右边距)= 450px

10.outline轮廓属性

是绘制于元素周围的一条线,位于边框边缘的外围,可起到突出元素的作用。

image

  • outline:color style width 值同border-style
    p

参数:auto设置边距,length,%百分比

p.margin{ margin-top:100px;margin-bottom:100px;margin-right:50px;margin-left:50px;}

11. 分组 和 嵌套 选择器

1.使用分组选择器,每个选择器用逗号分隔。

h1,h2,p {color:green;}

2.嵌套选择器
  • p{ }: 为所有 p 元素指定一个样式。
  • .marked{ }: 为所有 class="marked" 的元素指定一个样式。
  • .marked p{ }: 为所有 class="marked" 元素内的 p 元素指定一个样式。
  • p.marked{ }: 为所有 class="marked" 的 p 元素指定一个样式。

12.Display(显示) 与 Visibility(可见性)

1. 隐藏元素 - display:none不占空间 或visibility:hidden 占空间

h1.hidden {visibility:hidden;}
h1.hidden {display:none;}

2.Display - 块和内联元素

块元素是一个元素,占用了全部宽度,在前后都是换行符。

块元素 <h1> <p> <div>
<span> <a> 内联元素只需要必要的宽度,不强制换行。
li {display:inline;} 列表项显示为内联元素
span {display:block;} 把span元素作为块元素

13. position定位

div.static {position: static;}  /*static默认值,即没有定位,遵循正常的文档流对象。*/
p.fixed {position:fixed;} /*元素的位置相对于浏览器窗口是固定位置。即使窗口滚动也不移动:*/
h2.left {position:relative;left:-20px;} /*相对定位元素的定位是相对其正常位置。左移20px*/
h2.pos_top {position:relative;top:-50px;}
h2 {position:absolute;left:100px;top:150px;} /*absolute 绝对定位默认相对于最近的已定位父元素,没有则相对html*/
div {position:sticky} /*sticky 粘性定位依赖于用户的滚动,在relative与fixed定位之间切换*/
img {z-index:-1} /*重叠的元素 显示在后面*/
clip:rect(0px,60px,200px,0px); /*剪辑一个绝对定位的元素*/
div.ex {overflow:scroll/hidden/auto/默认visible;} overflow: 如果元素中的内容超出了给定的宽度和高度属性,overflow 属性可以确定是否显示滚动条等行为。

14. Float(浮动)

会使元素向左或向右移动,其周围的元素也会重新排列。
img {float:right;} 右浮动
如果你把几个浮动的元素放到一起,如果有空间的话,它们将彼此相邻。

.text {clear:both;}  清除浮动
  • img {display: block;margin: auto;width: 40%;} 图片居中
.right {position: absolute;right: 0px;} 1.左右对齐-定位方式
.right {float: right;} 2.左右对齐 - 使用 float 方式
.center {padding: 70px 0;border: 3px solid green;} 3.垂直居中对齐 - 使用 padding
.center {padding: 70px 0;border: 3px solid green;text-align: center;} 4.水平垂直居中
.center {line-height: 200px;height: 200px;} 5.垂直居中 line-height设置行间距
6.垂直居中

15.组合选择符

div~p {background-color:yellow;} 选取所有指定元素之后的相邻兄弟元素(以波浪号 ~ 分隔)

16. 结构伪类选择器

p:first-child {color:blue;} /*使用 :first-child 伪类来选择父元素的第一个子元素。*/
p > i:first-child { color:blue;} /*匹配所有<p> 元素中的第一个 <i> 元素*/
p:first-child i {color:blue;} /*匹配所有作为第一个子元素的 <p> 元素中的所有 <i> 元素*/
q:lang(no) {quotes: "~" "~";} /*:lang 伪类为不同的语言定义特殊的规则*/
选择器 说明
input:checked 选择所有选中的表单元素
input:disabled 所有禁用的表单元素
p:empty 所有没有子元素的p元素
input:enabled 所有启用的表单元素
p:first-of-type 选择的每个 p 元素是其父元素的第一个 p 元素
input:in-range 元素指定范围内的值
input:invalid 选择所有无效的元素
p:last-of-type 选择每个p元素是其母元素的最后一个p元素
:not(p) 选择所有p以外的元素
p:nth-last-child(2) 选择所有p元素倒数的第二个子元素
p:nth-last-of-type(2) 选择所有p元素倒数的第二个为p的子元素
p:nth-of-type(2) 选择所有p元素第二个为p的子元素
p:only-of-type 选择所有仅有一个子元素为p的元素
p:only-child 选择所有仅有一个子元素的p元素
input:optional 选择没有"required"的元素属性
input:out-of-range 选择指定范围以外的值的元素属性
input:read-only 选择只读属性的元素属性
input:read-write 选择没有只读属性的元素属性
input:required 选择有"required"属性指定的元素属性
root 选择文档的根元素
#news:target 选择当前活动#news元素(点击URL包含锚的名字)
input:valid 选择所有有效值的属性
input:focus 选择元素输入后具有焦点
p:first-letter 选择每个<p元素的第一个字母
p:first-line 选择每个<p元素的第一行
p:before 在每个p元素之前插入内容
p:after 在每个p元素之后插入内容
p:lang(it) 为p元素的lang属性选择一个开始值

17. 伪元素

添加一些选择器的特殊效果。

selector:pseudo-element {property:value;}
selector.class:pseudo-element {property:value;}

1. :first-line 伪元素 只能用于块级元素。

属性: font properties,color properties,background properties,word-spacing,letter-spacing,text-decoration,vertical-align,text-transform,line-height,clear.
2. :first-letter 伪元素 向文本的首字母设置特殊样式

p:first-letter {color:#ff0000;font-size:xx-large;}

属性:font/color/background/margin/padding/border properties,text-decoration,vertical-align,text-transform,line-height,float,clear.
3. 伪元素和CSS类 伪元素可以结合CSS类

p.article:first-letter {color:#ff0000;} /*选择每个<p> 元素的第一个字母*/

p:first-line {color:#ff0000;font-variant:small-caps;} /*选择每个<p> 元素的第一行*/
p:first-child /*选择器匹配属于任意元素的第一个子元素的 <p> 元素*/
/*link,visited,active,hover,focus*/
p:lang(it) {background:yellow;} /*向带有指定 lang 属性开始的元素添加样式。*/

18. 导航栏

ul {list-style-type:none;margin:0;padding:0;} /*从列表中删除边距和填充*/
a {display:block;width:60px;} /*垂直导航栏*/

/*1. 创建链接并添加边框
在 border <ul> 上添加 border 属性来让导航栏有边框。
如果要在每个选项上添加边框,可以在每个 <li> 元素上添加border-bottom :*/
li {text-align:center;border-bottom:1px solid #555;}
li:last-child {border-bottom:none;}

/*2. 全屏高度的固定导航条*/
ul {list-style-type: none;
    margin: 0;
    padding: 0;
    width: 25%;
    background-color: #f1f1f1;
    height: 100%; /* 全屏高度 */
    position: fixed; 
    overflow: auto; /* 如果导航栏选项多,允许滚动 */}
	
/*3.添加分割线*/
li {border-right: 1px solid #bbb;}
li:last-child {border-right: none;}

/*4. 导航条固定在头部或者底部:*/
ul {position: fixed;top: 0;width: 100%;}
ul {position: fixed;bottom: 0;width: 100%;}

/*5. 灰色水平导航条*/
ul {border: 1px solid #e7e7e7;background-color: #f3f3f3;}
li a {color: #666;}

/*6. */

19. 下拉菜单

<style>
.dropdown {position: relative;display: inline-block;}
.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f9f9f9;
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  padding: 12px 16px;}
.dropdown:hover .dropdown-content {display: block;}
</style>
<div class="dropdown">
  <span>鼠标移动到我这!</span>
  <div class="dropdown-content">
    <p>菜鸟教程</p>
    <p>www.runoob.com</p>
  </div>
</div>

<style>
/* 下拉按钮样式 */
.dropbtn {
    background-color: #4CAF50;
    color: white;
    padding: 16px;
    font-size: 16px;
    border: none;
    cursor: pointer;
}

/* 容器 <div> - 需要定位下拉内容 */
.dropdown {
    position: relative;
    display: inline-block;
}

/* 下拉内容 (默认隐藏) */
.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}

/* 下拉菜单的链接 */
.dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

/* 鼠标移上去后修改下拉菜单链接颜色 */
.dropdown-content a:hover {background-color: #f1f1f1}

/* 在鼠标移上去后显示下拉菜单 */
.dropdown:hover .dropdown-content {
    display: block;
}

/* 当下拉内容显示后修改下拉按钮的背景颜色 */
.dropdown:hover .dropbtn {
    background-color: #3e8e41;
}
</style>

<div class="dropdown">
  <button class="dropbtn">下拉菜单</button>
  <div class="dropdown-content">
    <a href="#">菜鸟教程 1</a>
    <a href="#">菜鸟教程 2</a>
    <a href="#">菜鸟教程 3</a>
  </div>
</div>

/*下拉内容对齐方式*/
float:left、right;
从右到左:
.dropdown-content {right: 0;}

20.Tips

谷歌浏览器调试工具

F12-选择工具
错误的属性有黄色叹号
css属性前有多选框用于调试代码

网页制作思路:

  • 从上到下,先整体再布局
  • 先标签再css美化

CSS书写顺序

1.盒子模型属性
2.文字样式
3.圆角,阴影等修饰属性

css特性

  • 继承性:子级默认继承父级的文字属性
  • 层叠性:当设置了多个属性时,相同属性覆盖(后面覆盖前面),不同属性叠加
  • 优先权:当一个标签用了多个选择器,范围越大优先级越低
    通配符选择器<标签<类class<id<行内样式<!important(加在分号前面)
    复合选择器进行权重叠加计算(继承权重最低,important最高)
说明 快捷键 Emmet
类选择器 p.class div特殊直接 .class
id选择器 p#box
同级标签 div+p
父子级标签 div>p
多个相同标签 span*3
有内容的标签 div
属性简写 w500 width:500px
多个属性 w500+h200+bgc
display 效果 说明
block 块级 独占一行,宽高属性生效,默认宽度为父级
inline 行内 一行共存多个,宽高属性不生效,由内容撑开
inline-block 行内块 一行共存多个,宽高属性生效,默认由内容撑开

21. 学成在线网页制作

1. 文件夹+头部布局

网站根目录是存放网站的第一层文件夹 用处
images文件夹 存放图片、logo、样式修饰图
upload文件夹 存放非固定使用的图片素材,如商品图宣传图需要上传的图片
CSS文件夹 存放css文件(link标签引入)base.css基础公共样式 index.css首页css样式
index.html 首页HTML文件
  1. 布局思路:先整体再布局,从外到内,从上到下,从左到右
  2. CSS实现思路:画盒子,调整盒子范围宽高背景色
    调整盒子位置:flex布局,内外边距
    控制图片,文字内容样式
  3. header区域-布局
    通栏:宽度与浏览器窗口相同的盒子
    标签结构:通栏>版心>logo>导航>搜索>用户
功能 功能 标签结构
logo 单机跳转到首页,引擎搜索优化 h1>a>网站名称(搜索关键字)
导航栏 点击跳转页面 ul>li*3>a,避免堆砌a标签,li设置右margin,a设置左右padding
搜索区域 .search>input+a/button
用户user .user>a>img+span

2. banner布局

通栏banner>版心>.left+.right
左侧导航栏:.left>ul>li*9>a,a默认状态背景图为白色右箭头
右侧课程表:.right>h3+.content

精品推荐区域:.recommand>h3+ul+a.modify
精品课程区域:.hd+.bd

22. 小兔鲜项目

制作类目 结构 备注
项目目录 images、uploads、iconfont、css(common.css)、index.html
SEO搜索引擎优化三大标签 title网页头部标签、description网页描述、keywords网页关键字 meta:desc、kw
favicon.ico 网页图标 出现在浏览器标题栏,放在网站根目录
快捷导航shortcut 通栏>版心>导航ul,布局flex-end
头部header .header>logo+导航nav+搜索search+购物车cart
新鲜好物goods 标题title+内容bd 多区域样式共用
热门品牌brand 左侧left+右侧箭头(显示在标题外部,定位)
生鲜fresh 右侧right>菜单ul+查看全部
最新专题topic

23. web移动

平面转换transform 为元素添加动态效果,与过渡配合使用 位移、旋转、缩放、倾斜 说明
平移 transform:translate(±20px,±20%); 百分比按盒子大小,只写一个值表示x,或者单独设置translateX、translateY
旋转 transform:ratate(±180deg); +顺时针
改变转换原点 默认为中心点transform-origin:水平 垂直; 值可以为方位、像素、百分比
多重转换 先平移再旋转 transform:translate(600px) ratate(360deg);
缩放 transform:scale(2,2) 一个值表示xy等比例
倾斜 transform:skew(±30deg); 倾斜角度
线性渐变 background-image:linear-gradient(to right/45deg,red 60%,green) 渐变方向和终点位置可选
径向渐变 background-image:radial-gradient(50px 20px at center center,red 60%,green) 两条半径为椭圆

平移实现居中效果 transform:translate(-50%,-50%)
background-image:liner-gradient(transparent,rgba(0,0,0,0.5));透明渐变
transparent=rgba(0,0,0,0)全透明黑色

24. 空间转换 动画

posted on 2023-09-12 15:18  dzw9  阅读(59)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3