vito的Web前端学习 Day8(CSS)

2022年2月23日

1 精灵图

2 字体图标

2.1 字体图标下载

2.2 把fonts文件夹放入页面根目录 

2.3 在css中引入字体

2.4 html标签内添加小图标 

2.5 字体图标代码实现

2.6 字体图标追加

3 精灵图和字体图标对比

4 CSS三角制作

5 CSS用户界面样式

5.1 鼠标样式

5.2 轮廓线 outline 

5.3 防止拖拽文本域

6 vertical-align实现行内块和文字垂直居中对齐

7 图片低侧空白缝隙解决方案

8 溢出的文字省略号显示 

8.1 单行文字溢出省略号显示

8.2 多行文字溢出省略号显示

9 marign负值巧妙运用

10 文字围绕浮动元素巧妙运用

11 行内块的巧妙运用

12 CSS三角巧妙运用

13 CSS初始化

14 总结


1 精灵图

<head>
	<style type="text/css">
		.div1 {
			width: 60px;
			height: 60px;
			background: green url(images/sprites.png) no-repeat -182px 0;
		}
	</style>
</head>
<body>
	<h3>精灵图</h3>
	<div class="div1"></div>
</body>

background-positionhttps://blog.csdn.net/vitocool/article/details/122520505?spm=1001.2014.3001.5501


2 字体图标

2.1 字体图标下载

字体图标下载网站-阿里巴巴https://www.iconfont.cn/字体图标下载网站-icomoonhttps://icomoon.io/

2.2 把fonts文件夹放入页面根目录 

2.3 在css中引入字体

2.4 html标签内添加小图标 

2.5 字体图标代码实现

<head>
	<style type="text/css">
        /*字体声明*/
		@font-face {
			font-family: 'icomoon';
			src:  url('fonts/icomoon.eot?z9byv6');
			src:  url('fonts/icomoon.eot?z9byv6#iefix') format('embedded-opentype'),
			url('fonts/icomoon.ttf?z9byv6') format('truetype'),
			url('fonts/icomoon.woff?z9byv6') format('woff'),
			url('fonts/icomoon.svg?z9byv6#icomoon') format('svg');
			font-weight: normal;
			font-style: normal;
			font-display: block;
		}
		span {
			/*使用字体*/
			font-family: 'icomoon';
			font-size: 50px;
			color: yellow;
		}
	</style>
</head>
<body>
	<h3>字体图标</h3>
	<span></span>
</body>

2.6 字体图标追加


3 精灵图和字体图标对比


4 CSS三角制作

<head>
	<style type="text/css">
        .div2 {
			float: left;
			width: 0;
			height: 0;
			margin: 0;
			padding: 0;
			/*制作三角*/
			/*四个透明边*/
			border: 10px solid transparent;
			/*再使一个边显色*/
			border-right: 10px solid black;
		}
		.div3 {
			float: left;
			width: 100px;
			height: 100px;
			margin: 0;
			padding: 0;
			background-color: black;
		}
	</style>
</head>
<body>
    <h3>CSS三角制作</h3>
	<!-- 小三角 -->
	<div class="div2"></div>
	<!-- 正方形 -->
	<div class="div3"></div>
</body>


5 CSS用户界面样式

5.1 鼠标样式

    <h3>鼠标样式</h3>
	<ul>
		<li style="cursor: default;">默认</li>
		<li style="cursor: pointer;">小手</li>
		<li style="cursor: move;">移动</li>
		<li style="cursor: text;">文本</li>
		<li style="cursor: not-allowed;">禁止</li>
	</ul>

5.2 轮廓线 outline 

文本框轮廓线也用相同方法 

<head>
	<style type="text/css">
    input {
			outline: 0;
		}
	</style>
</head>
<body>
    <h3>表单轮廓线</h3>
	<input type="text" name="">
</body>

5.3 防止拖拽文本域

<head>
	<style type="text/css">
        textarea {
			resize: none;
		}
	</style>
</head>
<body>
    <h3>防止拖拽文本框</h3>
	<textarea></textarea>
</body>

表单和文本框属性https://blog.csdn.net/vitocool/article/details/122442555?spm=1001.2014.3001.5502


6 vertical-align实现行内块和文字垂直居中对齐

<head>
	<style type="text/css">
        .div4, .div5, .div6, .div7 {
			display: inline-block;
			width: 50px;
			height: 50px;
			background-color: black;
		}
		.div4 {
			/*默认,元素放置在父元素的基线上*/
			vertical-align: baseline;
		}
		.div5 {
			/*把元素的顶端与行中最高元素的顶端对齐*/
			vertical-align: top;
		}
		.div6 {
			/*常用,把此元素放置在父元素的中部*/
			vertical-align: middle;
		}
		.div7 {
			/*把元素的顶端与行中最低的元素的顶端对齐*/
			vertical-align: bottom;
		}
	</style>
</head>
<body>
    <h3>vertical-align</h3>
	<div class="div4"></div>
	baseline默认,元素放置在父元素的基线上

	<br>
	
	<div class="div5"></div>
	top把元素的顶端与行中最高元素的顶端对齐

    <br><br>

    <div class="div6"></div>
	middle把此元素放置在父元素的中部

	<br><br>

	<div class="div7"></div>
	bottom把元素的顶端与行中最低的元素的顶端对齐
</body>


7 图片低侧空白缝隙解决方案

<head>
	<style type="text/css">
.div8, .div9 {
			border: 1px solid black;
		}
		.div8 img {
			vertical-align: middle;
		}
		.div9 img {
			display: block;
		}
	</style>
</head>
<body>
<h3>图片低侧空白缝隙解决方案</h3>
	<div class="div8">
		<img src="images/img.jpg" alt="">
		给图片添加vertical-align:middle/top/bottom
	</div>
	<div class="div9">
		把图片转换为块级元素diaplay:block
		<img src="images/img.jpg" alt="">
	</div>
</body>


8 溢出的文字省略号显示 

8.1 单行文字溢出省略号显示

<head>
	<style type="text/css">
        .div10 {
			width: 150px;
			background-color: pink;
			/*如果文字显示不开自动换行*/
			/*white-space: normal;*/
			/*如果文字显示不开强制一行内显示*/
			white-space: nowrap;
			/*超出部分隐藏*/
			overflow: hidden;
			/*文字用省略号替代超出的部分*/
			text-overflow: ellipsis;
		}
		
	</style>
</head>
<body>
    <h3>单行文字溢出省略号显示</h3>
	<div class="div10">
		单行文字溢出省略号显示
	</div>
</body>

8.2 多行文字溢出省略号显示

<head>
	<style type="text/css">
        .div11 {
			width: 50px;
			background-color: pink;
			/*超出部分隐藏*/
			overflow: hidden;
			/*文字用省略号替代超出的部分*/
			text-overflow: ellipsis;
			/*弹性伸缩盒子模型显示*/
			display: -webkit-box;
			/*限制在一个块元素显示的文本的行数*/
			-webkit-line-clamp: 3;
			/* 设置或检索伸缩盒对象的子元素的排列方式 */
			-webkit-box-orient: vertical;
		}
	</style>
</head>
<body>
    <h3>多行文字溢出省略号显示</h3>
	<div class="div11">
		多行文字溢出省略号显示
	</div>
</body>


9 marign负值巧妙运用

<head>
	<style type="text/css">
        .div12 ul li {
			float: left;
			list-style: none;
			width: 150px;
			height: 200px;	
			border: 1px solid red;
			margin-left: -1px;
		}
		.div12 ul li:hover {
            /* 相对定位可以压住标准流 */
			position: relative;
			border: 1px solid blue;
		}
	</style>
</head>
<body>
    <h3>marign负值巧妙运用</h3>
	<div class="div12">
		<ul>
			<li>1</li>
			<li>2</li>
			<li>3</li>
			<li>4</li>
			<li>5</li>
		</ul>
	</div>
</body>


10 文字围绕浮动元素巧妙运用

<head>
	<style type="text/css">
        .div13 {
			width: 200px;
			height: 100px;
			background-color: pink;
		}
		.div13 img {
			float: left;
			width: 100px;
			height: 100px;
		}
	</style>
</head>
<body>
    <h3>文字围绕浮动元素巧妙运用</h3>
	<div class="div13">
		<img src="images/img.jpg" alt="">
		文字围绕浮动元素
	</div>
</body>


11 行内块的巧妙运用

<head>
	<style type="text/css">
        .div14 a {
			display: inline-block;
			width: 30px;
			height: 30px;
			background-color: #ccc;
			border: 1px solid black;
			text-decoration: none;
			text-align: center;
			line-height: 30px;
			color: #333;
			font-size: 14px;
		}
		.div14 .shangyiye {
			width: 80px;
		}
		.div14 .wu {
			background-color: transparent;
			border: 1px solid transparent;
		}
		.div14 input {
			width: 36px;
		}
		.div14 button {
			width: 50px;
			height: 30px;
			background-color: #ccc;
			border: 1px solid black;
		}
	</style>
</head>
<body>
    <h3>行内块的巧妙运用</h3>
	<div class="div14">
		<a class="shangyiye" href="">&lt;&lt;上一页</a>
		<a class="wu" href="">2</a>
		<a href="">3</a>
		<a href="">4</a>
		<a href="">5</a>
		<a class="wu" href="">...</a>
		<a class="shangyiye" href="">下一页&gt;&gt;</a>
		到第
		<input type="text" name="">
		页
		<button>确定</button>
	</div>
</body>


12 CSS三角巧妙运用

<head>
	<style type="text/css">
        .div15 {
			width: 0;
			height: 0;
			border-top: 50px solid transparent;
			border-right: 20px solid black;
			border-bottom: 50px solid black;
			border-left: 20px solid transparent;
		}
	</style>
</head>
<body>
    <h3>CSS三角巧妙运用</h3>
	<div class="div15"></div>
</body>


13 CSS初始化

		* {
			margin: 0;
			padding: 0
		}
        /* em 和 i 斜体的文字不倾斜 */
        em,
        i {
        	font-style: normal
        }
        /* 去掉li 的小圆点 */
        li {
        	list-style: none
        }

        img {
        	/* border 0 照顾低版本浏览器 如果图片外面包含了链接会有边框的问题 */
        	border: 0;
        	/* 取消图片底侧有空白缝隙的问题 */
        	vertical-align: middle
        }
        
        button {
        	/* 当我们鼠标经过button按钮的时候,鼠标变成小手 */
        	cursor: pointer
        }

        a {
        	color: #666;
        	text-decoration: none
        }

        a:hover {
        	color: #c81623
        }
        
        button,
        input {
        	/* "\5B8B\4F53" 就是宋体的意思这样浏览器兼容性比较好 */
        	font-family: Microsoft YaHei,Heiti SC, tahoma, arial, Hiragino Sans GB, "\5B8B\4F53", sans-serif
        }

        body {
        	/* CSS3 抗锯齿形 让文字显示的更加清晰 */
        	-webkit-font-smoothing: antialiased;
        	background-color: #fff;
        	font: 12px/1.5 Microsoft YaHei, Heiti SC, tahoma, arial, Hiragino Sans GB, "\5B8B\4F53", sans-serif;
        	color: #666
        }

        .hide,
        .none {
        	display: none
        }
        /* 清除浮动 */
        .clearfix:after {
        	visibility: hidden;
        	clear: both;
        	display: block;
        	content: ".";
        	height: 0
        }

        .clearfix {
        	*zoom: 1
        }

14 总结

<!DOCTYPE html>
<html lang="zh">
<head>
	<meta charset="UTF-8">
	<title>CSS高级技巧</title>
	<style type="text/css">
		.div1 {
			width: 60px;
			height: 60px;
			background: green url(images/sprites.png) no-repeat -182px 0;
		}
		/*字体声明*/
		@font-face {
			font-family: 'icomoon';
			src:  url('fonts/icomoon.eot?z9byv6');
			src:  url('fonts/icomoon.eot?z9byv6#iefix') format('embedded-opentype'),
			url('fonts/icomoon.ttf?z9byv6') format('truetype'),
			url('fonts/icomoon.woff?z9byv6') format('woff'),
			url('fonts/icomoon.svg?z9byv6#icomoon') format('svg');
			font-weight: normal;
			font-style: normal;
			font-display: block;
		}
		span {
			/*使用字体*/
			font-family: 'icomoon';
			font-size: 50px;
			color: yellow;
		}
		.div2 {
			float: left;
			width: 0;
			height: 0;
			margin: 0;
			padding: 0;
			/*制作三角*/
			/*四个透明边*/
			border: 10px solid transparent;
			/*再使一个边显色*/
			border-right: 10px solid black;
		}
		.div3 {
			float: left;
			width: 100px;
			height: 100px;
			margin: 0;
			padding: 0;
			background-color: black;
		}
		li {
			margin-bottom: 15px;
		}
		input {
			outline: 0;
		}
		textarea {
			resize: none;
		}
		.div4, .div5, .div6, .div7 {
			display: inline-block;
			width: 50px;
			height: 50px;
			background-color: black;
		}
		.div4 {
			/*默认,元素放置在父元素的基线上*/
			vertical-align: baseline;
		}
		.div5 {
			/*把元素的顶端与行中最高元素的顶端对齐*/
			vertical-align: top;
		}
		.div6 {
			/*把此元素放置在父元素的中部*/
			vertical-align: middle;
		}
		.div7 {
			/*把元素的顶端与行中最低的元素的顶端对齐*/
			vertical-align: bottom;
		}
		.div8, .div9 {
			border: 1px solid black;
		}
		.div8 img {
			vertical-align: middle;
		}
		.div9 img {
			display: block;
		}
		.div10 {
			width: 150px;
			background-color: pink;
			/*如果文字显示不开自动换行*/
			/*white-space: normal;*/
			/*如果文字显示不开强制一行内显示*/
			white-space: nowrap;
			/*超出部分隐藏*/
			overflow: hidden;
			/*文字用省略号替代超出的部分*/
			text-overflow: ellipsis;
		}
		.div11 {
			width: 50px;
			background-color: pink;
			/*超出部分隐藏*/
			overflow: hidden;
			/*文字用省略号替代超出的部分*/
			text-overflow: ellipsis;
			/*弹性伸缩盒子模型显示*/
			display: -webkit-box;
			/*限制在一个块元素显示的文本的行数*/
			-webkit-line-clamp: 3;
			/* 设置或检索伸缩盒对象的子元素的排列方式 */
			-webkit-box-orient: vertical;
		}
		.div12 ul li {
			float: left;
			list-style: none;
			width: 150px;
			height: 200px;	
			border: 1px solid red;
			margin-left: -1px;
		}
		.div12 ul li:hover {
			position: relative;
			border: 1px solid blue;
		}
		.div13 {
			width: 200px;
			height: 100px;
			background-color: pink;
		}
		.div13 img {
			float: left;
			width: 100px;
			height: 100px;
		}
		.div14 a {
			display: inline-block;
			width: 30px;
			height: 30px;
			background-color: #ccc;
			border: 1px solid black;
			text-decoration: none;
			text-align: center;
			line-height: 30px;
			color: #333;
			font-size: 14px;
		}
		.div14 .shangyiye {
			width: 80px;
		}
		.div14 .wu {
			background-color: transparent;
			border: 1px solid transparent;
		}
		.div14 input {
			width: 36px;
		}
		.div14 button {
			width: 50px;
			height: 30px;
			background-color: #ccc;
			border: 1px solid black;
		}
		.div15 {
			width: 0;
			height: 0;
			border-top: 50px solid transparent;
			border-right: 20px solid black;
			border-bottom: 50px solid black;
			border-left: 20px solid transparent;
		}
		/* 把我们所有标签的内外边距清零 */
		* {
			margin: 0;
			padding: 0
		}
        /* em 和 i 斜体的文字不倾斜 */
        em,
        i {
        	font-style: normal
        }
        /* 去掉li 的小圆点 */
        li {
        	list-style: none
        }

        img {
        	/* border 0 照顾低版本浏览器 如果图片外面包含了链接会有边框的问题 */
        	border: 0;
        	/* 取消图片底侧有空白缝隙的问题 */
        	vertical-align: middle
        }
        
        button {
        	/* 当我们鼠标经过button按钮的时候,鼠标变成小手 */
        	cursor: pointer
        }

        a {
        	color: #666;
        	text-decoration: none
        }

        a:hover {
        	color: #c81623
        }
        
        button,
        input {
        	/* "\5B8B\4F53" 就是宋体的意思这样浏览器兼容性比较好 */
        	font-family: Microsoft YaHei, Heiti SC, tahoma, arial, Hiragino Sans GB, "\5B8B\4F53", sans-serif
        }

        body {
        	/* CSS3 抗锯齿形让文字显示的更加清晰 */
        	-webkit-font-smoothing: antialiased;
        	background-color: #fff;
        	font: 12px/1.5 Microsoft YaHei, Heiti SC, tahoma, arial, Hiragino Sans GB, "\5B8B\4F53", sans-serif;
        	color: #666
        }

        .hide,
        .none {
        	display: none
        }
        /* 清除浮动 */
        .clearfix:after {
        	visibility: hidden;
        	clear: both;
        	display: block;
        	content: ".";
        	height: 0
        }

        .clearfix {
        	*zoom: 1
        }
</style>
</head>
<body>
	<h3>精灵图</h3>
	<div class="div1"></div>

	<h3>字体图标</h3>
	<span></span>

	<h3>CSS三角制作</h3>
	<!-- 小三角 -->
	<div class="div2"></div>
	<!-- 正方形 -->
	<div class="div3"></div>

    <br><br><br><br>

	<h3>鼠标样式</h3>
	<ul>
		<li style="cursor: default;">默认</li>
		<li style="cursor: pointer;">小手</li>
		<li style="cursor: move;">移动</li>
		<li style="cursor: text;">文本</li>
		<li style="cursor: not-allowed;">禁止</li>
	</ul>

	<h3>表单轮廓线</h3>
	<input type="text" name="">

	<h3>防止拖拽文本框</h3>
	<textarea></textarea>

	<h3>vertical-align</h3>
	<div class="div4"></div>
	baseline默认,元素放置在父元素的基线上

	<br>
	
	<div class="div5"></div>
	top把元素的顶端与行中最高元素的顶端对齐

    <br><br>

    <div class="div6"></div>
	middle把此元素放置在父元素的中部

	<br><br>

	<div class="div7"></div>
	bottom把元素的顶端与行中最低的元素的顶端对齐

	<h3>图片低侧空白缝隙解决方案</h3>
	<div class="div8">
		<img src="images/img.jpg" alt="">
		给图片添加vertical-align:middle/top/bottom
	</div>
	<div class="div9">
		把图片转换为块级元素diaplay:block
		<img src="images/img.jpg" alt="">
	</div>

	<h3>单行文字溢出省略号显示</h3>
	<div class="div10">
		单行文字溢出省略号显示
	</div>

	<h3>多行文字溢出省略号显示</h3>
	<div class="div11">
		多行文字溢出省略号显示
	</div>

	<h3>marign负值巧妙运用</h3>
	<div class="div12">
		<ul>
			<li>1</li>
			<li>2</li>
			<li>3</li>
			<li>4</li>
			<li>5</li>
		</ul>
	</div>

	<br><br><br><br><br><br><br><br><br><br>

	<h3>文字围绕浮动元素巧妙运用</h3>
	<div class="div13">
		<img src="images/img.jpg" alt="">
		文字围绕浮动元素
	</div>

	<h3>行内块的巧妙运用</h3>
	<div class="div14">
		<a class="shangyiye" href="">&lt;&lt;上一页</a>
		<a class="wu" href="">2</a>
		<a href="">3</a>
		<a href="">4</a>
		<a href="">5</a>
		<a class="wu" href="">...</a>
		<a class="shangyiye" href="">下一页&gt;&gt;</a>
		到第
		<input type="text" name="">
		页
		<button>确定</button>
	</div>

	<h3>CSS三角巧妙运用</h3>
	<div class="div15"></div>
</body>
</html> 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值