background-image
background-image:liner-gradient(颜色,颜色)
向下/向上/向左/向右/对角
方向的使用方法:1、方位名字2、角度单位是deg
角度
<style>
background-image: linear-gradient(
to left,
hsl(0, 100%, 50%),
blue);
background-image: linear-gradient(
to right bottom,
hsl(0, 100%, 50%),
blue
);
</style>
background-image:radial-gradient(颜色,颜色)
circle
表示圆以ellipse
表示椭圆形。默认值是el1ipse
<style>
background-image: radial-gradient(
circle,
red 5%,
yellow 10%,
green 60%
);
</style>
transform
transform:scale(x,y)
transform:scale(x,y);
宽高倍数,没有单位transform:scaleX();
宽度的倍数transform:scaleY();
高度的倍数skew(X,y)
x水平方向,y垂直方向,正负是正反方向(以盒子的右下角为基准,向右和向下是正方向)skewX()
x水平方向skewY()
y垂直方向translate(x,y)
x水平方向,y垂直方向,正负是正反方向(水平向右和垂直向下是正方向,水平向左和垂直向上是反方向)translateX()
x水平方向translateY()
y垂直方向translateZ()
Z方向 正负是正反方向(正值是距离面部近,负值距离面部远)添加3D
透视度 perspective: 2000px;
设置为3D
转换transform-style: preserve-3d;
transform-origin:right top;
rotate
单位是deg
正数是顺时针,负数是逆时针rotate()
单位是deg止数是顺时针,负数是逆时针rotateX()
沿着X轴旋转 角度不加引号rotateY()
沿着Y轴旋转 <style>
* {
margin: 0;
padding: 0;
}
.box {
position: relative;
border: 3px solid black;
left: 400px;
/* 添加3D透视度 */
perspective: 2000px;
/* 设置为3D转换 */
transform-style: preserve-3d;
}
.box>div {
position: absolute;
left: 10px;
top: 400px;
width: 400px;
height: 150px;
/* 文字居中 */
text-align: center;
line-height: 150px;
font-size: 30px;
}
.greenBox {
background-color: green;
transform: translateZ(200px);
}
.redBox {
background-color: red;
transform: translateZ(-200px);
}
.blueBox {
background-color: blue;
/* 旋转+平移(面对盒子) */
transform: rotateY(90deg) translateZ(-200px);
}
.yellownBox {
background-color: yellow;
transform: rotateY(90deg) translateZ(200px);
}
</style>
<body>
<div class="box">
<div class="greenBox">我是前面盒子</div>
<div class="redBox">我是后面盒子</div>
<div class="blueBox">我是左面盒子</div>
<div class="yellownBox">我是右面盒子</div>
</div>
</body>
transition
hover
一起用css
属性transition
<style>
/*过渡的CSS属性*/
transition-property:height;
/*过渡的时间周期 秒s 毫秒ms*/
transition-duration:3s;
/*过渡的时间速度曲线*/
/*默认是ease 先快后慢 linear匀速 */
transition-timing-functoin:linear;
/*过渡的延迟*/
transition-delay:4s;
/*综合设置 css属性 周期 速度曲线 延迟;*/
transition:width 4s lineaar 1s,height 3s;
/*所有的都是5s*/
transition:all 5s;
</style>
<style>
ul {
/*去掉默认小点*/
list-style: none;
/* 浮动以后ul没有高度 li不占位置 所以清除浮动带来的影响 */
overflow: hidden;
}
ul>li {
float: left;
background-color: #aaa;
margin: 0 10px;
padding: 10px 15px;
border-radius: 15px;
}
ul a {
color: aqua;
font-size: 20px;
/*去掉下划线*/
text-decoration: none;
}
ul>li:nth-child(3):active {
background-color: orange;
}
</style>
<body>
<ul>
<li>
<a href="#"><</a>
</li>
<li><a href="#">1</a></li>
<li><a href="#">2</a></li>
<li><a href="#">3</a></li>
<li><a href="#">4</a></li>
<li><a href="#">5</a></li>
<li><a href="#">6</a></li>
<li><a href="#">7</a></li>
<li><a href="#">8</a></li>
<li><a href="#">9</a></li>
<li><a href="#">></a></li>
</ul>
</body>
animation-name: firstAnimate;
animation-duration: 8s;
animation-timing-function: linear;
animation-delay: 1s;
animation-iteration-count: 2;
animation-play-state: paused;
@keyframs 动画名称{ }
<style>
<style>
* {
margin: 0;
padding: 0;
}
.parent {
position: relative;
margin: auto;
width: 1200px;
height: 650px;
border: 10px solid blue;
}
.child {
position: absolute;
width: 100px;
height: 100px;
background-color: red;
text-align: center;
line-height: 100px;
color: #fff;
font-size: 20px;
/*
一、设置动画属性:
动画的名称
动画的时间周期
动画的时间速度曲线
动画的延迟
动画的次数
动画的暂停
*/
animation-name: firstAnimate;
animation-duration: 8s;
animation-timing-function: linear;
animation-delay: 1s;
animation-iteration-count: 2;
/* 无限次 */
animation-iteration-count: infinite;
/* animation-play-state: running; */
}
.child:hover {
animation-play-state: paused;
}
/*
二、创建动画
@keyframs 动画名称
*/
@keyframes firstAnimate {
/* 开始到结束 */
/* from {
left: 0;
top: 0;
}
to {
left: 1100px;
top: 0;
} */
0% {
/* left: 0;
top: 0; */
transform: translate(0, 0);
font-size: 10px;
}
25% {
/* left: 1100px;
top: 0; */
transform: translate(1100px, 0) rotate(360deg);
font-size: 28px;
color: green;
}
50% {
/* left: 1100px;
top: 550px; */
transform: translate(1100px, 550px) rotate(720deg);
font-size: 10px;
color: orange;
}
75% {
/* left: 0;
top: 550px; */
transform: translate(0, 550px) rotate(1080deg);
font-size: 28px;
color: gray;
}
100% {
/* left: 0;
top: 0; */
transform: translate(0, 0) rotate(1440deg);
font-size: 10px;
color: darkblue;
}
}
</style>
<body>
<div class="parent">
<div class="child">web前端</div>
</div>
</body>