当前位置:首页 > 科技  > 软件

12 个超级实用的 CSS 技巧

来源: 责编: 时间:2023-12-19 17:15:37 168观看
导读user-selectuser-select 属性可以用来控制用户是否能够选择文本。<div> <p>You can't select this text.</p></div><p>You can select this text.</p>CSS:div { width: max-content; height: 40px; border: 3px s

86n28资讯网——每日最新资讯28at.com

user-select

user-select 属性可以用来控制用户是否能够选择文本。86n28资讯网——每日最新资讯28at.com

<div>   <p>You can't select this text.</p></div><p>You can select this text.</p>

CSS:86n28资讯网——每日最新资讯28at.com

div {  width: max-content;  height: 40px;  border: 3px solid purple;  user-select: none;}

解析:user-select 属性用于控制用户是否能够选择文本。通过设置 user-select 属性,可以限制用户对文本的选择行为或禁止选择。该属性可以应用于任何 HTML 元素,并接受以下值:86n28资讯网——每日最新资讯28at.com

  • auto:默认值,表示用户可以选择文本。
  • none:禁止用户选择文本。
  • text:允许用户选择文本,但不能选择元素的其他部分,如背景、边框等。
  • all:允许用户选择元素内的所有内容,包括文本、背景和边框。

user-select 属性的应用场景通常涉及到用户交互和用户体验的控制,可以在以下情况下使用该属性:86n28资讯网——每日最新资讯28at.com

  • 防止文本被选中:在某些情况下,你可能希望防止用户选择特定区域或元素内的文本,例如,防止用户选择输入框中的内容或防止复制敏感信息。通过将 user-select 设置为 none,可以禁止用户选择这些文本,从而保护数据的安全性。
  • 控制文本选择范围:有时你可能只希望用户能够选择特定的文本内容,而不包括其他元素中的样式信息。通过将 user-select 设置为 text,可以限制用户只能选择文本内容,而不能选择其他元素的样式信息,从而提供更精确的文本选择控制。
  • 自定义选择效果:使用 user-select 属性,你还可以自定义文本选择的外观效果。通过设置适当的 CSS 样式,如更改选中文本的背景色、前景色等,可以为用户提供独特的文本选择体验,增强页面的可视化效果。
  • 取消文本选择:在某些特定情况下,你可能希望用户无法选择任何文本,以防止复制、截屏等操作。通过将 user-select 设置为 none,可以完全禁止用户选择文本,从而实现取消文本选择的效果。

pointer-events

可以使用 pointer-events 属性来控制元素对指针事件的反应。86n28资讯网——每日最新资讯28at.com

<div>   <p class="first">      Please <a href="https://shefali.dev/blog">Click here</a>   </p>   <p class="second">      Please <a href="https://shefali.dev/blog">Click here</a>   </p></div>

CSS:86n28资讯网——每日最新资讯28at.com

.first {  pointer-events: none; }.second {  pointer-events: auto;}

解析:pointer-events 属性用于控制元素对指针事件的反应。该属性允许指定一个值来控制元素是否响应鼠标事件、触摸事件或笔事件。它有以下值:86n28资讯网——每日最新资讯28at.com

  • auto:元素按照默认方式响应指针事件。
  • none:元素不响应指针事件,事件将向下传递到下一层元素。
  • visiblePainted:元素响应指针事件,但只有在元素的背景颜色或图片已经被绘制时才会响应。
  • visibleFill:元素响应指针事件,但只有在元素的填充区域内部时才会响应,对于描边无效。
  • visibleStroke:元素响应指针事件,但只有在元素的描边区域内部时才会响应,对于填充无效。
  • visible:元素响应指针事件,只要它可见且鼠标事件发生在元素的边框框线上或内部。

pointer-events 属性的应用场景如下:.86n28资讯网——每日最新资讯28at.com

  • 禁用用户交互:通过将元素的 pointer-events 设置为 none,可以阻止用户与该元素进行任何交互操作,如点击、滚动等。这在需要禁用某个元素的交互能力时非常有用。
  • 创建自定义的点击区域:有时候,可能希望一个元素在视觉上占据更大的空间,但只对特定区域响应点击事件。通过将 pointer-events 设置为 none,然后在需要响应点击的子元素上重新设置为 auto,可以创建自定义的点击区域。
  • 优化元素叠加情况下的交互:当多个元素重叠在一起时,可能会出现交互冲突。通过设置不同元素的 pointer-events 属性,可以控制哪个元素应该优先响应指针事件,以解决叠加元素之间的交互问题。
  • 实现鼠标样式变化:通过设置 pointer-events 属性,可以根据特定的交互状态来改变鼠标样式。例如,在元素被禁用或不可点击时,将 pointer-events 设置为 none,并将鼠标样式修改为指示不可点击的样式。

accent-color

当涉及到复选框和单选按钮等输入时,浏览器通常会引入默认颜色,该颜色可能与 UI 配色方案不太协调。86n28资讯网——每日最新资讯28at.com

为了保持 UI 的一致性,可以使用accent-color 属性更改输入的默认颜色。86n28资讯网——每日最新资讯28at.com

<form>   <input type="radio" id="html" />   <label for="html">HTML</label>   <input type="radio" id="css" />   <label for="css">CSS</label>   <input type="radio" id="js" />   <label for="js">JavaScript</label></form>

CSS:86n28资讯网——每日最新资讯28at.com

input {  accent-color: green;}

效果如下:86n28资讯网——每日最新资讯28at.com

86n28资讯网——每日最新资讯28at.com

解析:accent-color 属性用于指定元素的强调色。它可以应用于很多元素,例如按钮、链接、输入框、选择框等等,以突出显示它们在页面中的作用。使用该属性可以使你的网页在不同的主题和模式下保持一致的强调色,从而提高网页的可访问性和用户体验。86n28资讯网——每日最新资讯28at.com

backdrop-filter

有时候你可能想要对一个元素后面的区域应用滤镜效果(模糊效果),可以使用 backdrop-filter 属性。86n28资讯网——每日最新资讯28at.com

<div class="container">  <div class="box">    <p>This is an example of backdrop-filter property.</p>  </div></div>

CSS:86n28资讯网——每日最新资讯28at.com

.container {  display: flex;  align-items: center;  justify-content: center;  height: 350px;  width: 350px;  background: url(img.webp) no-repeat center;}.box {  padding: 10px;  font-weight: bold;  color: white;  background-color: transparent;  backdrop-filter: blur(10px);}

效果如下:86n28资讯网——每日最新资讯28at.com

86n28资讯网——每日最新资讯28at.com

解析:backdrop-filter 属性用于在元素背景的后面应用滤镜效果。它可以让你创建出模糊、色彩变化或其他视觉效果来改变元素背景区域的外观。通过使用该属性,可以为元素的背景添加一层视觉效果,使背景与页面的其余内容产生视觉上的分离和层次感。这个属性通常与背景图像或颜色一起使用,以提供一种更加丰富和吸引人的设计效果。86n28资讯网——每日最新资讯28at.com

caret-color

当使用 input 或 textarea 元素时,可以使用 caret-color 属性来更改这些元素的文本光标颜色,以匹配网页的配色方案。86n28资讯网——每日最新资讯28at.com

<input type="text" placeholder="Your Name" />

CSS:86n28资讯网——每日最新资讯28at.com

input {  caret-color: red;}

解析:caret-color 属性用于指定文本光标的颜色。文本光标是指在输入框或文本区域中表示当前输入位置的闪烁符号,该属性可以接受各种颜色值,例如十六进制颜色、RGB 值、颜色名称等。它可以应用于任何支持文本输入和编辑的元素,如 input、textarea 等。86n28资讯网——每日最新资讯28at.com

image-rendering

可以使用 image-rendering 属性来控制缩放图像的渲染方式并优化质量。不过,该属性不会影响未经缩放的图像。86n28资讯网——每日最新资讯28at.com

img {  image-rendering: pixelated;}

解析:image-rendering 属性用于控制图像在浏览器中的渲染方式。它可以影响图像在缩放、旋转或变形等操作时的呈现质量。它提供了不同的值,可以让你选择最适合你需求的图像渲染方式。以下是一些常见的属性值:86n28资讯网——每日最新资讯28at.com

  • auto:浏览器默认的图像渲染方式。
  • crisp-edges:通过强调图像边缘来实现清晰的渲染效果,适用于像素风格的图像。
  • pixelated:通过像素化的方式来渲染图像,适用于放大图像时保持像素风格的效果。

以下是 image-rendering 属性的一些常见应用场景:86n28资讯网——每日最新资讯28at.com

  • 改善小图片的清晰度:对于小图片,如果直接展示可能会出现锯齿或者模糊的问题。通过将 image-rendering 设置为 pixelated,可以让浏览器在缩放图片时使用像素化的方式,从而获得更加清晰的效果。这在需要展示小图标、小徽标等场景下非常有用。
  • 提高大图片的加载速度:对于大图片,如果直接展示会导致页面加载速度变慢,影响用户体验。通过将 image-rendering 设置为 crisp-edges,可以让浏览器在缩放图片时只显示原始边缘,从而加快图片加载速度。
  • 在高分辨率设备上显示高清图像:对于高分辨率设备,如果直接展示低分辨率的图片,可能会出现模糊或者失真的问题。通过将 image-rendering 设置为 auto 或者 high-quality,可以让浏览器在高分辨率设备上显示高清的图像,提高用户体验。
  • 优化动画效果的展示:当图像用于动画场景时,通过将 image-rendering 设置为 optimizeQuality 或者 optimizeSpeed,可以根据需要平衡图像质量和展示速度,从而优化动画效果的展示。

mix-blend-mode

如果想要设置一个元素内容与其背景的混合效果,可以使用 mix-blend-mode 属性。86n28资讯网——每日最新资讯28at.com

<div>  <img src="cat.jpg" alt="cat" /></div>
div {  width: 600px;  height: 400px;  background-color: rgb(255, 187, 0);}img {  width: 300px;  height: 300px;  mix-blend-mode: luminosity;}

效果如下:86n28资讯网——每日最新资讯28at.com

86n28资讯网——每日最新资讯28at.com

解析:mix-blend-mode 属性用于控制元素内容与其背景之间的混合模式。通过设置 mix-blend-mode 可以改变元素在视觉上与其周围元素的交互方式。这个属性可以应用于任何具有背景的元素,包括文本、图像和其他 HTML 元素。使用 该属性可以创造出各种独特的视觉效果,如颜色叠加、透明度混合、文字特效等。86n28资讯网——每日最新资讯28at.com

常用的 mix-blend-mode 值包括:86n28资讯网——每日最新资讯28at.com

  • normal:默认值,没有混合效果。
  • multiply:将元素的颜色与背景进行相乘。
  • screen:将元素的颜色与背景进行屏幕模式混合。
  • overlay:根据元素和背景的亮度进行混合。
  • darken:选择较暗的颜色作为最终混合结果。
  • lighten:选择较亮的颜色作为最终混合结果。
  • color-dodge:通过减少对比度来混合颜色。
  • color-burn:通过增加对比度来混合颜色。
  • difference:计算颜色之间的差异。
  • exclusion:排除两种颜色的共同部分。
  • hue:保留元素的色调,应用背景的饱和度和亮度。
  • saturation:保留元素的饱和度,应用背景的色调和亮度。
  • color:保留元素的色调和饱和度,应用背景的亮度。
  • luminosity:保留元素的亮度,应用背景的色调和饱和度。

object-fit

可以使用 object-fit 属性来设置图像或视频的大小调整行为,使其适应其容器。86n28资讯网——每日最新资讯28at.com

<div>  <img src="cat.jpg" alt="cat" /></div>

CSS:86n28资讯网——每日最新资讯28at.com

div {  width: 500px;  height: 400px;  border: 3px solid purple;}img {  width: 500px;  height: 300px;  object-fit: cover; }

效果如下:86n28资讯网——每日最新资讯28at.com

86n28资讯网——每日最新资讯28at.com

解析:object-fit 属性用于控制替换元素(如 <img>、<video> 或 <iframe>)在其容器中的尺寸调整行为。通过设置 object-fit 属性,可以更好地控制替换元素在容器中的尺寸调整行为,确保它们能够正确地适应容器并保持比例。86n28资讯网——每日最新资讯28at.com

当替换元素的尺寸与其容器不匹配时,浏览器默认会根据一定规则调整元素的大小和比例。然而,这可能导致图像或视频失真,或者在容器中无法正确显示。object-fit 属性可以解决这个问题,它有以下几个取值:86n28资讯网——每日最新资讯28at.com

  • fill:默认值,元素会被拉伸以填充容器,可能导致元素的宽高比发生变化,从而导致元素变形。
  • contain:元素会等比例缩放,保持其原始宽高比,并使其适应容器,不会超出容器边界,并且会在容器内居中显示。
  • cover:元素会等比例缩放,保持其原始宽高比,并将其放大到填充容器,可能会超出容器边界,但不会变形,并且会在容器内居中显示。
  • none:元素会保持其原始大小,不会进行任何尺寸调整。
  • scale-down:元素会根据容器的大小来确定是按原始大小显示还是进行缩小。

object-position

object-position 属性与 object-fit 属性一起使用,用于指定图像或视频在其内容框内的 x/y 坐标上的位置。86n28资讯网——每日最新资讯28at.com

<div>  <img src="cat.jpg" alt="cat" /></div>

CSS:86n28资讯网——每日最新资讯28at.com

div {  width: 500px;  height: 400px;  border: 3px solid purple;}img {  width: 500px;  height: 300px;  object-fit: cover;  object-position: bottom right;}

效果如下:86n28资讯网——每日最新资讯28at.com

86n28资讯网——每日最新资讯28at.com

这里设置了 object-position: bottom right; 这意味着在调整图像大小时,它将显示图像的右下角部分。86n28资讯网——每日最新资讯28at.com

解析:object-position 属性用于指定替换元素(如 <img>、<video> 或 <iframe>)在其容器中的位置。它可以与 object-fit 属性一起使用,以控制替换元素的大小和位置。86n28资讯网——每日最新资讯28at.com

当使用 object-fit 属性调整替换元素的大小时,可能会在容器中留下空白区域。object-position 属性允许我们根据需要将替换元素在容器内进行精确定位,以填充空白区域。86n28资讯网——每日最新资讯28at.com

object-position 属性接受两个值:86n28资讯网——每日最新资讯28at.com

  • 水平定位:使用关键字 left、center 或 right,或者使用百分比或长度值来指定水平方向上的位置。
  • 垂直定位:使用关键字 top、center 或 bottom,或者使用百分比或长度值来指定垂直方向上的位置。

outline-offset

可以使用 outline-offset 属性来指定描边与元素边框之间的间距。86n28资讯网——每日最新资讯28at.com

<div></div>
div {  width: 300px;  height: 300px;  border: 3px solid purple;  outline: 3px solid rgb(81, 131, 148);  outline-offset: 10px;}

效果如下:86n28资讯网——每日最新资讯28at.com

86n28资讯网——每日最新资讯28at.com

解析:outline-offset 属性用于指定描边(outline)与元素边框之间的间距。它可以用来调整描边的位置和外观。默认情况下,描边与元素的边框紧密相邻,且没有间距。但是,通过使用 outline-offset 属性,可以在描边和边框之间创建一个间距,该属性接受长度值或百分比值。正值会将描边向外扩展,负值会将描边向内收缩。86n28资讯网——每日最新资讯28at.com

scroll-behavior

可以使用 scroll-behavior 属性来实现平滑滚动,而无需使用任何 JavaScript,只需要一行 CSS 代码。86n28资讯网——每日最新资讯28at.com

html {  scroll-behavior: smooth;}

解析:scroll-behavior 属性用于控制页面滚动的行为。通过设置该属性的值,可以让页面在滚动时呈现出不同的效果,该属性支持两个值:86n28资讯网——每日最新资讯28at.com

  • auto:默认值,表示使用浏览器默认的滚动行为,即瞬间跳转到目标位置。
  • smooth:启用平滑滚动效果,当用户通过链接或编程方式触发页面内的锚点跳转或滚动行为时,页面将会平滑滚动到目标位置。

启用平滑滚动效果可以提升用户体验,使页面滚动更加流畅自然。此外,平滑滚动还有助于减少眼睛视觉的跳跃感和头晕感,并且能够更好地吸引用户的注意力。86n28资讯网——每日最新资讯28at.com

text-justify

当将 text-align 属性的值设置为 justify 时,可以使用 text-justify 属性来设置文本的对齐方式。86n28资讯网——每日最新资讯28at.com

p {  text-align: justify;  text-justify: inter-character;}

解析:text-justify 属性用于设置文本的对齐方式,当 text-align 属性的值设置为 justify 时生效。通过设置 text-justify 属性,可以控制文本在行内的分布方式,以填充行内的空白空间,从而实现文本的自动调整和对齐。该属性支持以下几个值:86n28资讯网——每日最新资讯28at.com

  • auto:默认值,由浏览器根据当前文本内容和容器宽度自动选择适合的对齐方式。
  • none:取消文本的对齐方式,文本将保持左对齐或右对齐,取决于 text-align 属性的值。
  • inter-word:使文本在单词之间进行自动调整,填充行内的空白空间。
  • inter-character:使文本在字符之间进行自动调整,填充行内的空白空间。

本文链接:http://www.28at.com/showinfo-26-49909-0.html12 个超级实用的 CSS 技巧

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 你应该了解的 15 个 CSS 隐藏属性

下一篇: 解除Java反复编译的困扰方法,优化开发效率

标签:
  • 热门焦点
  • 6月安卓手机性能榜:vivo/iQOO霸占旗舰排行榜前三

    6月安卓手机性能榜:vivo/iQOO霸占旗舰排行榜前三

    2023年上半年已经正式过去了,我们也迎来了安兔兔V10版本,在新的骁龙8Gen3和天玑9300发布之前,性能榜的榜单大体会以骁龙8Gen2和天玑9200+为主,至于那颗3.36GHz的骁龙8Gen2领先
  • 线程通讯的三种方法!通俗易懂

    线程通讯的三种方法!通俗易懂

    线程通信是指多个线程之间通过某种机制进行协调和交互,例如,线程等待和通知机制就是线程通讯的主要手段之一。 在 Java 中,线程等待和通知的实现手段有以下几种方式:Object 类下
  • SpringBoot中使用Cache提升接口性能详解

    SpringBoot中使用Cache提升接口性能详解

    环境:springboot2.3.12.RELEASE + JSR107 + Ehcache + JPASpring 框架从 3.1 开始,对 Spring 应用程序提供了透明式添加缓存的支持。和事务支持一样,抽象缓存允许一致地使用各
  • 一个注解实现接口幂等,这样才优雅!

    一个注解实现接口幂等,这样才优雅!

    场景码猿慢病云管理系统中其实高并发的场景不是很多,没有必要每个接口都去考虑并发高的场景,比如添加住院患者的这个接口,具体的业务代码就不贴了,业务伪代码如下:图片上述代码有
  • 2023年,我眼中的字节跳动

    2023年,我眼中的字节跳动

    此时此刻(2023年7月),字节跳动从未上市,也从未公布过任何官方的上市计划;但是这并不妨碍它成为中国最受关注的互联网公司之一。从2016-17年的抖音强势崛起,到2018年的&ldquo;头腾
  • 10天营收超1亿美元,《星铁》比《原神》差在哪?

    10天营收超1亿美元,《星铁》比《原神》差在哪?

    来源:伯虎财经作者:陈平安即便你没玩过《原神》,你一定听说过的它的大名。恨它的人把《原神》开服那天称作是中国游戏史上最黑暗的一天,有粉丝因为索尼在PS平台上线《原神》,怒而
  • 东方甄选单飞:有些鸟注定是关不住的

    东方甄选单飞:有些鸟注定是关不住的

    作者:彭宽鸿来源:华尔街科技眼&zwj;&zwj;&zwj;&zwj;&zwj;&zwj;&zwj;&zwj;&zwj;&zwj;东方甄选创始人俞敏洪带队的&ldquo;7天甘肃行&rdquo;直播活动已在近日顺利收官。成立后一
  • 苹果140W USB-C充电器:采用氮化镓技术

    苹果140W USB-C充电器:采用氮化镓技术

    据10 月 30 日 9to5 Mac 消息报道,当苹果推出新的 MacBook Pro 2021 时,该公司还推出了新的 140W USB-C 充电器,附赠在 MacBook Pro 16 英寸机型的盒子里,也支
  • 与兆芯合作  联想推出全新旗舰版笔记本电脑开天N7系列

    与兆芯合作 联想推出全新旗舰版笔记本电脑开天N7系列

    联想与兆芯合作推出全新联想旗舰版笔记本电脑开天 N7系列。这个系列采用兆芯KX-6640MA处理器平台,KX-6640MA 处理器是采用了陆家嘴架构,16nm 工艺,4 核 4 线
Top