CSS 高阶技巧
AI-摘要
Tianli GPT
AI初始化中...
介绍自己 🙈
生成本文简介 👋
推荐相关文章 📖
前往主页 🏠
前往爱发电购买
CSS 高阶技巧
Pupper一、精灵图
1. 精灵图(sprites)的使用
使用核心:
- 精灵图主要针对背景图片使用,可以把多个背景图放到一张大图中,减少服务器的请求次数
- 移动背景图片位置(
background-position
)- 移动距离就是图片的 x 和 y 轴坐标(与网页坐标不同),一般都是往左往上移动,所以数值都是 负值
语法:
1 | background-position: x y; |
代码示例
1 |
|
二、 字体图标
字体图标(iconfont): 主要用于显示网页中通用、常用的一些小图标
1. 下载字体图标
- icomoon 字库 http://icomoon.io
- 国外字体库,非常全面,但是访问较慢
- 阿里 iconfont 字库 http://www.iconfont.cn
- 国内字体库,访问快,免费
2. 引入字体图标
- 将下载包里的 fonts 文件夹放入页面根目录
- 在 css 样式中全局声明字体
1
2
3
4
5
6
7
8
9
10<!-- 字体声明 -- > @font-face {
font-family: "icomoon";
src: url("fonts/icomoon.eot?p4ssmb");
src: url("fonts/icomoon.eot?p4ssmb#iefix") format("embedded-opentype"), url("fonts/icomoon.ttf?p4ssmb")
format("truetype"), url("fonts/icomoon.woff?p4ssmb") format("woff"), url("fonts/icomoon.svg?p4ssmb#icomoon")
format("svg");
font-weight: normal;
font-style: normal;
font-display: block;
}
1
2<span></span>
<span></span>
</code-block>
1 | <style> |
</code-block>
</code-group>
3. 添加新的字体图标
重新上传 selection.json 文件,选择要新加的字体图标,然后下载覆盖之前的文件
三、CSS 三角的做法
- 定义一个宽和高为 0,边透明的正方形,
- 需要哪个方向的三角,就改变哪个方向的颜色
1 |
|
四、CSS 用户界面样式
1. 更改鼠标样式(cursor)
语法:
1 | 选择器 { |
属性值 | 说明 |
---|---|
default | 小白(默认) |
pointer | 小手 |
move | 移动 |
text | 文本 |
not-allowed | 禁止 |
1 |
|
2. 去除输入框轮廓线 (outline)
给表单添加
outline: 0;
或outline: none;
样式后,可以去除边框线
1 |
|
3. 防止拖拽文本域 (resize)
给文本域添加
resize: none;
,就可以防止文本域被拖拽
代码示例
1 |
|
五、行内块元素与文字对齐 (vertical-align)
vertical-align
:用于设置图片或表单等 行内块 元素 和 文字垂直对齐
语法:
1 | /* 基线对齐、顶端对齐、中部对齐、低端对齐 */ |
值 | 说明 |
---|---|
baseline | 默认,元素放在父元素的基准线上 |
top | 把元素的顶端与行中最高元素的顶端对齐 |
middle | 把元素放在父元素的中部 |
bottom | 把元素的顶端与行中最低的元素的顶端对齐 |
用途:
- 可以使图片与文字居中垂直居中对齐
- 可以去除图片(行内块元素)下方空白
代码示例
1 |
|
六、 文字溢出省略号显示
1. 单行文本溢出省略号显示
三个必要条件:
- 强制一行内显示文本(
white-space: nowrap;
默认 normal 自动换行) - 超出部分隐藏 (
overflow: hidden;
) - 文字用省略号替代超出部分(
text-overflow: ellipsis;
)
1 | /* 固定写法 */ |
2. 多行文本溢出省略号显示
- 超出部分隐藏 (
overflow: hidden;
) - 文字用省略号替代超出部分(
text-overflow: ellipsis;
) - 将盒子模型转换为弹性盒子模型 (
display: -webkit-box;
) - 限制块元素显示的文本行数 (
-webkit-line-clamp: 2;
) - 盒子的子元素排放方式为居中 (
-webkit-box-orient: vertical;
)
1 | /* 固定写法 */ |
代码示例
1 |
|
七、常见布局技巧
1. margin 负值运用
- 利用
margin-left:-1px;
去除边框重合- 鼠标进过时,提高盒子的层次
- 如果没有定位,则使用相对定位
position: relative;
- 如果盒子定位了,则使用
z-index: 1;
1 |
|
2. 文字环绕浮动元素
想要文字环绕浮动的盒子,只需给盒子增加浮动即可
1 |
|
3. 行内块巧妙运用
只要给行内块元素的父元素添加
text-align: center;
,所有行内块元素都会水平居中
代码示例
1 |
|
4. 三角技巧的运用
直角三角形的做法: 把上边框的宽度调大,左边和下边的宽度设置为 0 即可
代码示例
1 |
|
5. css 初始化
京东初始化
1 | /* 把我们所有标签的内外边距清零 */ |
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果