CSS3-小白4(CSS高级技巧)

五、CSS高级技巧(接上篇)

  • 2D变形(transform在这里插入图片描述
    1.移动 translate(x,y) translate移动平移的意思 注:translate移动的距离如果是按 % 的话 则不是以父亲的宽度为准,而是以自己的为准
    在这里插入图片描述在这里插入图片描述在这里插入图片描述
  1. 缩放 scale(x,y)在这里插入图片描述
    3.旋转 rotate(deg)在这里插入图片描述4.旋转中心点(transform-origin在这里插入图片描述5.倾斜 skew(deg,deg)在这里插入图片描述
  • 3D变形 在这里插入图片描述在这里插入图片描述
    1.rotateX() 2.rotateY() 3.rotateZ()在这里插入图片描述
    4.透视(perspective在这里插入图片描述在这里插入图片描述

5.translateX(x) 在这里插入图片描述
6.translateY(y)在这里插入图片描述
7.translateZ(z) 在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
注: 3D变形(translateZ)加透视(pespective)加过渡(transition)

在这里插入图片描述8.translate3d
transform: translate3d(x,y,z); x和y可以是px也可以是% z只能是px;

9.开门案列 在这里插入图片描述利用的相关知识:(position子绝父相,pespective 透视,transition 过渡 ,transform-origin 设置旋转中心,transform:rotate 旋转,transform:translate 移动,鼠标经过hover)
代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>开门大吉</title>
		<style>
			section {
				width: 388px;
				height: 300px;
				margin:  100px auto;
				position: relative;
				perspective: 1000px;
				background: url(img/chu.jpg);	
			}
			.left,.right {
				width: 50%;
				height: 100%;
				background: url(img/bg.png);
				position: absolute;
				top: 0;
				transition: all 0.5s;
				box-sizing: border-box;
				border: 1px solid black;	
			}
			.left {
				left: 0;
			}
			.right {
				right: 0;	
			}
			section:hover .left {
				transform: rotateY(-120deg); /*设置旋转角度*/
				transform-origin: left; /*设置旋转中心*/
			}
			section:hover .right {
				transform-origin: right;
				transform: rotateY(120deg);
			}
			.left::before,
			.right::before { /*利用伪元素before 创建盒子*/
				content: "";
				width: 20px;
				height: 20px;
				position: absolute;
				top: 50%;
				transform: translateY(-50%); /*利用2D变形 使盒子水平居中*/
				border-radius: 50%;
				background-color: black;
			}
			.left::before{
				right: 0;
				margin-right: 5px;
			}
			.right::before {
				left: 0;
				margin-left: 5px;
			}
		</style>
	</head>
	<body>
		<section>
			<div class="left"></div>
			<div class="right"></div>
		</section>
	</body>
</html>
  • 动画(css3)在这里插入图片描述在这里插入图片描述在这里插入图片描述
    六、伸缩布局(CSS3)
    在这里插入图片描述在这里插入图片描述
  • display:flex; 伸缩布局模式 在父级添加
    在这里插入图片描述
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>携程网</title>
		<style>
			* {
				padding: 0;
				margin: 0;
			}
			ul {
				list-style: none;
			}
			body {
				min-width: 320px;
				max-width: 840px;
				margin: 0 auto;
			}
			header {
				width: 100%;
				height: 100px;
			}
			img {
				width: 100%;
				height: 100%;
			}
			nav {
				padding: 5px;
			}
			.row { 
				width: 100%;
				height: 90px;
				background-color: pink;
				border-radius: 8px;
				display: flex; /*伸缩布局 给父亲加*/
				margin-bottom: 5px;
			}
			.row3 {
				flex: 1;
				border: 1px solid #FFFFFF;
			}
			.row :first-child {
				border: 0;
			}
			.hotel {
				display: flex;
				flex-direction: column;
			}
			.hotel a {
				flex: 1;
				text-decoration: none;
				text-align: center;
				line-height: 45px;
				font-size: 16px;
				color: #FFFFFF;
				text-shadow: 0 1px 2px rgba(255,255,255,0.5);
			}
			.hotel a:first-child {
				border-bottom: 1px solid #FFFFFF;
			}
		</style>
	</head>
	<body>
		<header>
			<img src="img/ctrip.jpg"/>	
		</header>
		<nav>
			<div class="row">
				<div class="row3">1</div>
				<div class="row3 hotel">
					<a href="#">酒店</a>
					<a href="#">旅馆</a>
				</div>
				<div class="row3 hotel">
					<a href="#">酒店</a>
					<a href="#">旅馆</a>
				</div>
			</div>
			<div class="row">
				<div class="row3">2</div>
				<div class="row3 hotel">
					<a href="#">酒店</a>
					<a href="#">旅馆</a>
				</div>
				<div class="row3 hotel">
					<a href="#">酒店</a>
					<a href="#">旅馆</a>
				</div>
			</div>
			<div class="row">
				<div class="row3">3</div>
				<div class="row3 hotel">
					<a href="#">酒店</a>
					<a href="#">旅馆</a>
				</div>
				<div class="row3 hotel">
					<a href="#">酒店</a>
					<a href="#">旅馆</a>
				</div>
			</div>
		</nav>	
	</body>
</html>

3.justify-content 属性 调整主轴对齐 在这里插入图片描述
4.align-items 属性 调整侧轴对齐在这里插入图片描述
5.flex-wrap 属性 控制是否换行在这里插入图片描述
6.flex-flow 属性在这里插入图片描述
7.align-content 属性堆栈对齐在这里插入图片描述
8.order 属性 控制子项目的排序方式在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值