乐趣区

关于javascript:7个实用的CSS技巧

微信搜寻【大迁世界】, 我会第一工夫和你分享前端行业趋势,学习路径等等。
本文 GitHub https://github.com/qq449245884/xiaozhi 已收录,有一线大厂面试残缺考点、材料以及我的系列文章。

快来收费体验 ChatGpt plus 版本的,咱们出的钱 体验地址:https://chat.waixingyun.cn 能够退出网站底部技术群,一起找 bug,另外新版作图神器,ChatGPT4 已上线 https://cube.waixingyun.cn/home

1. First letter drop 1. 首字母失落

咱们能够应用 :first-letter 来删除文本的第一个字母:

p:first-letter {
 font-size: 200%;
 color: #8A2BE2;
}

:first-letter 选择器用于指定元素的首字母款式,它仅实用于块级元素。成果如下:

https://codepen.io/OMGZui/pen/oNEMVvN

2. 图像文本盘绕

CSS 中的 shape-outside 属性是一个十分有用且弱小的工具,它容许设计师和开发者管制内容如何围绕一个浮动元素(通常是图像或图形)进行排列。通过定义这个属性中的形态,您能够创立更简单和吸引人的布局,使文本盘绕简单的形态,而不仅仅是通常的矩形。

shape-outside 属性定义了内容将围绕其排列的形态。它通常与 float 属性一起应用,因为只有浮动的元素才会有内容围绕它。

可用的值:

  1. none: 默认值。不创立任何形态;内容围绕元素的盒子进行排列。
  2. <shape-box>: 应用元素的边距盒、边框盒、填充盒或内容盒作为参考盒。

    • margin-box
    • border-box
    • padding-box
    • content-box
  3. <basic-shape>: 能够定义一个根本的形态,例如:

    • circle()
    • ellipse()
    • inset()
    • polygon()
  4. <image>: 一个图像能够用作形态的参考。图像的 alpha 通道决定了形态的尺寸。

举例

应用椭圆:

.element {
    float: left;
    shape-outside: ellipse(50% 50% at 50% 50%);
}

应用多边形:

.element {
    float: left;
    shape-outside: polygon(0% 0%, 100% 0%, 50% 100%);
}

应用图像:

.element {
    float: left;
    shape-outside: url('path-to-image.png');
}

理论利用

假如你有一个圆形图像,您心愿文本围绕它排列,同时尊重圆的边界。没有 shape-outside,文本只会围绕图像的矩形边界盒子进行排列。但应用 shape-outside,能够使文本平滑地围绕圆形图像进行排列,从而失去更加视觉上吸引人的布局。

整合地址:https://codepen.io/OMGZui/pen/JjpBzGP

3. 应用 :where() 简化代码

当将同一款式利用于多个元素时,CSS 可能会像这样:

.page div,
.paget .title,
.page #article {color: red;}

这段代码看起来并不是很易读,而 :where() 伪类就派上了用场。:where() 伪类函数承受一个选择器列表作为其参数,并将抉择所有能够由选择器列表中的任何规定抉择的元素。

.page :where(div, .title, #article) {color: red;}

4. 通明图像的暗影

你是否曾尝试在通明图像上增加 box-shadow,后果却看起来像是你增加了边框?我想咱们都有过这样的经验。为通明图像增加暗影成果的解决方案是应用 drop-shadow

它的工作形式是,drop-shadow 属性遵循给定图像的 alpha 通道。因而,暗影是基于图像外部的形态,而不是显示在其内部。

事例地址:https://codepen.io/OMGZui/pen/bGLjJNO

5. 文字的打字成果

网页设计正在以每分钟的速度变得更富创意。借助 CSS 动画性能,您能够让您的网页充满生机。在这个例子中,咱们应用动画和 @keyframes 属性来实现打字机成果。

具体来说,对于这个演示,咱们实现了 steps() 属性来宰割咱们的文本动画。首先,你须要指定 steps() 的数量,就咱们的状况来说,这是咱们心愿进行动画解决的文本的字符长度。

其次,咱们应用 @keyframes 来申明动画何时开始。例如,如果你在“文字打字成果”前面写了另一个词,除非你扭转 CSS 片段中的 steps() 数量,否则动画将无奈工作。

也就是说,这种成果并不是特地新鲜。然而,只管能够通过应用 CSS 达到同样的成果,但大多数开发者依然会抉择应用 JavaScript 库。

事例地址:https://codepen.io/OMGZui/pen/MWQBxqd

6. 设置自定义光标

你可能永远不须要强制让你的访客应用独特的光标。至多,对于个别的用户体验目标来说是这样。然而,对于 cursor 属性的一点值得注意的是,它容许你展现图片。这相当于以照片格局展现工具提醒。

一些应用场景包含可能比拟两张不同的照片,而无需在视口中渲染这些照片。例如,能够应用光标属性来节俭设计中的空间。因为你能够将自定义光标锁定到特定的 div元素上,所以它不会烦扰到元素之外的其余元素。

事例地址:https://codepen.io/OMGZui/pen/abqjMXd

7. 纯 CSS 的清单

正如我在文章结尾提到的,CSS 正在稳步发展。而这个动静清单的演示就是一个很好的例证。

它的工作形式是咱们将复选框输出类型与 :checked 伪类一起应用。并应用 transform 属性在 :checked 标准返回真值时更改状态。

应用这种办法能够实现各种各样的指标。例如,当用户点击特定的复选框时,切换暗藏的内容。它实用于单选和复选框等输出类型,但也能够利用于 <option><select>元素。

事例地址:https://codepen.io/OMGZui/pen/yLvqwZW

交换

有幻想,有干货,微信搜寻 【大迁世界】 关注这个在凌晨还在刷碗的刷碗智。

本文 GitHub https://github.com/qq449245884/xiaozhi 已收录,有一线大厂面试残缺考点、材料以及我的系列文章。

退出移动版