千家信息网

CSS的实用小技巧有哪些

发表于:2025-02-19 作者:千家信息网编辑
千家信息网最后更新 2025年02月19日,这篇文章给大家分享的是有关CSS的实用小技巧有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1. 打字效果代码实现: 有趣且实用的 CSS 小技巧
千家信息网最后更新 2025年02月19日CSS的实用小技巧有哪些

这篇文章给大家分享的是有关CSS的实用小技巧有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

1. 打字效果

代码实现:

有趣且实用的 CSS 小技巧
.wrapper {  height: 100vh;  display: flex;  align-items: center;  justify-content: center;}.typing-demo {  width: 22ch;  animation: typing 2s steps(22), blink .5s step-end infinite alternate;  white-space: nowrap;  overflow: hidden;  border-right: 3px solid;  font-family: monospace;  font-size: 2em;}@keyframes typing {  from {    width: 0  }}    @keyframes blink {  50% {    border-color: transparent  }}

实现效果:

2. 设置阴影

当使用透明图像时,可以使用 drop-shadow() 函数在图像上创建阴影,而不是使用 box shadow 属性在元素的整个框后面创建矩形阴影:

box-shadow
Image with box-shadow
drop-shadow
Image with drop-shadow
.wrapper {  height: 100vh;  display: flex;  align-items: center;  justify-content: center;}.mr-2 {  margin-right: 2em;}.mb-1 {  margin-bottom: 1em;}.text-center {  text-align: center;}.box-shadow {  box-shadow: 2px 4px 8px #585858;}.drop-shadow {  filter: drop-shadow(2px 4px 8px #585858);}

对比效果:

3. 平滑滚动

无需 JavaScript 即可实现平滑滚动,只需一行 CSS:scroll-behavior: smooth;

A
B
C
html {  scroll-behavior: smooth;}nav {  position: fixed;  left: calc(50vw - 115px);  top: 0;  width: 200px;  text-align: center;  padding: 15px;  background: #fff;  box-shadow: 0 2px 5px 1px rgba(0, 0, 0, 0.2);}nav .link {  padding: 5px;  color: white;}.section {  height: 100vh;  display: flex;  align-items: center;  justify-content: center;  color: #fff;  font-size: 5em;  text-shadow:    0px 2px 0px #b2a98f,    0px 4px 3px rgba(0,0,0,0.15),    0px 8px 1px rgba(0,0,0,0.1);}.bg-red {  background: #de5448;}.bg-blue {  background: #4267b2;}.bg-green {  background: #4CAF50;}

实现效果:

4. 自定义光标

我们可以使用自定义图像,甚至表情符号来作为光标。

Default
Image
Emoji
.wrapper {  display: flex;  height: 100vh;  align-items: center;  justify-content: center;  background: #4776e6;  background: linear-gradient(to right, #4776e6, #8e54e9);  padding: 0 10px;}.tile {    width: 200px;    height: 200px;display: flex;    align-items: center;    justify-content: center;    background-color: #de5448;    margin-right: 10px;color: #fff;    font-size: 1.4em;    text-align: center;  }.tile-image-cursor {  background-color: #1da1f2;  cursor: url(https://picsum.photos/20/20), auto;}.tile-emoji-cursor {  background-color: #4267b2;  cursor: url("data:image/svg+xml;utf8,?"), auto;}

实现效果:

5. 截断文本

一行文本溢出隐藏:

白日依山尽,黄河入海流。欲穷千里目,更上一层楼。
div {  width: 200px;  background-color: #fff;  padding: 15px;  white-space: nowrap;  overflow: hidden;  text-overflow: ellipsis;}

实现效果:

还可以使用"-webkit-line-clamp"属性将文本截断为特定的行数。文本将在截断的地方会显示省略号:

div {  width: 200px;  display: -webkit-box;  -webkit-box-orient: vertical;  -webkit-line-clamp: 2;  overflow: hidden;}

实现效果:

6. 自定义选中样式

CSS 伪元素::selection,可以用来自定义用户选中文档的高亮样式。

默认高亮

自定义高亮

.wrapper {  height: 100vh;  display: flex;  align-items: center;  justify-content: center;}p {  font-size: 2rem;  font-family: sans-serif;}.custom-highlighting::selection {  background-color: #8e44ad;  color: #fff;}

实现效果:

7. CSS 模态框

我们可以使用 CSS 中的 :target 伪元素来创建一个模态框。

.wrapper {  height: 100vh;  display: flex;  align-items: center;  justify-content: center;  background: linear-gradient(to right, #834d9b, #d04ed6);}.wrapper a {  display: inline-block;  text-decoration: none;  padding: 15px;  background-color: #fff;  border-radius: 3px;  text-transform: uppercase;  color: #585858;  font-family: 'Roboto', sans-serif;}.modal {  visibility: hidden;  opacity: 0;  position: absolute;  top: 0;  right: 0;  bottom: 0;  left: 0;  display: flex;  align-items: center;  justify-content: center;  background: rgba(77, 77, 77, .7);  transition: all .4s;}.modal:target {  visibility: visible;  opacity: 1;}.modal__content {  border-radius: 4px;  position: relative;  width: 500px;  max-width: 90%;  background: #fff;  padding: 1em 2em;}.modal__close {  position: absolute;  top: 10px;  right: 10px;  color: #585858;  text-decoration: none;}

实现效果:

8. 空元素样式

可以使用 :empty 选择器来设置完全没有子元素或文本的元素的样式:

白日依山尽,黄河入海流。欲穷千里目,更上一层楼。
.wrapper {  height: 100vh;  display: flex;  justify-content: center;  align-items: center;}.box {  display: inline-block;  background: #999;  border: 1px solid #585858;  height: 200px;  width: 200px;  margin-right: 15px;}.box:empty {  background: #fff;}

实现效果:

9. 创建自定义滚动条

默认滚动条
自定义滚动条
.wrapper {  height: 100vh;  display: flex;  align-items: center;  justify-content: center;}.mr-1 {  margin-right: 1em;}.tile {  overflow: auto;  display: inline-block;  background-color: #ccc;  height: 200px;  width: 180px;}.tile-custom-scrollbar::-webkit-scrollbar {  width: 12px;  background-color: #eff1f5;}.tile-custom-scrollbar::-webkit-scrollbar-track{  border-radius: 3px;  background-color: transparent;}.tile-custom-scrollbar::-webkit-scrollbar-thumb{  border-radius:5px;  background-color:#515769;  border:2px solid #eff1f5}.tile-content {  padding: 20px;  height: 500px;}

实现效果:

10. 动态工具提示

可以使用 CSS 函数 attr() 来创建动态的纯 CSS 工具提示 。

HTML/CSS tooltip

Hover Here to see the tooltip.

You can also hover here to see another example.

.tooltip {  position: relative;  border-bottom: 1px dotted black;}.tooltip:before {  content: attr(data-tooltip);   position: absolute;  width: 100px;  background-color: #062B45;  color: #fff;  text-align: center;  padding: 10px;  line-height: 1.2;  border-radius: 6px;  z-index: 1;  opacity: 0;  transition: opacity .6s;  bottom: 125%;  left: 50%;  margin-left: -60px;  font-size: 0.75em;  visibility: hidden;}.tooltip:after {  content: "";  position: absolute;  bottom: 75%;  left: 50%;  margin-left: -5px;  border-width: 5px;  border-style: solid;  opacity: 0;  transition: opacity .6s;  border-color: #062B45 transparent transparent transparent;  visibility: hidden;}.tooltip:hover:before, .tooltip:hover:after {  opacity: 1;  visibility: visible;}

实现效果:

11. 圆形渐变边框

炫酷渐变边框
.gradient-border {  border: solid 5px transparent;  border-radius: 10px;  background-image: linear-gradient(white, white),     linear-gradient(315deg,#833ab4,#fd1d1d 50%,#fcb045);  background-origin: border-box;  background-clip: content-box, border-box;}.box {  width: 350px;  height: 100px;  display: flex;  align-items: center;  justify-content: center;  margin: 100px auto;}

实现效果:

12. 灰度图片

可以使用 grayscale() 过滤器功能将输入图像转换为灰度。

感谢各位的阅读!关于"CSS的实用小技巧有哪些"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

效果 元素 文本 实用 图像 样式 技巧 阴影 高亮 平滑 更上一层楼 欲穷千里目 一行 光标 内容 函数 动态 属性 工具 更多 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全监督检查自查表 关于网络安全的策划案 SQL数据库实验子查询 数据库修改表中内容吗 网络安全培训考试总结 数据库用户相关资料 青少年网络安全空中课 珠海澳仕玛互联网科技有限公司 sql数据库无日志不能附加 数据库技术及应用上机考试题 网络安全学院新闻 软件开发公司网站 网络安全等级保护三级国标 租的服务器需要内网穿透 网络安全法 规定 代码 软件开发怎么转算法 鼠标下载软件开发 网页链接与数据库连接池 两会网络安全传输 广东网络安全知多少 苹果服务器无法访问icloud 赣州企业服务器较好的公司 求剑网三成女捏脸数据库 一念逍遥已满的服务器能创号吗 供应商数据库意义 网络安全工程师考试在哪里报名 服务器的可扩展性有哪些 金万维客户端连接不上远程服务器 廊坊手机软件开发 饥荒一直无法连接到科雷服务器
0