user-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 solid purple;
user-select: none;
}
解析:user-select 属性用于控制用户是否能够选择文本。通过设置 user-select 属性,可以限制用户对文本的选择行为或禁止选择。该属性可以应用于任何 html 元素,并接受以下值:
user-select 属性的应用场景通常涉及到用户交互和用户体验的控制,可以在以下情况下使用该属性:
可以使用 pointer-events 属性来控制元素对指针事件的反应。
<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:
.first {
pointer-events: none;
}
.second {
pointer-events: auto;
}
解析:pointer-events 属性用于控制元素对指针事件的反应。该属性允许指定一个值来控制元素是否响应鼠标事件、触摸事件或笔事件。它有以下值:
pointer-events 属性的应用场景如下:.
当涉及到复选框和单选按钮等输入时,浏览器通常会引入默认颜色,该颜色可能与 UI 配色方案不太协调。
为了保持 UI 的一致性,可以使用accent-color 属性更改输入的默认颜色。
<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:
input {
accent-color: green;
}
效果如下:
解析:accent-color 属性用于指定元素的强调色。它可以应用于很多元素,例如按钮、链接、输入框、选择框等等,以突出显示它们在页面中的作用。使用该属性可以使你的网页在不同的主题和模式下保持一致的强调色,从而提高网页的可访问性和用户体验。
有时候你可能想要对一个元素后面的区域应用滤镜效果(模糊效果),可以使用 backdrop-filter 属性。
<div class="container">
<div class="box">
<p>This is an example of backdrop-filter property.</p>
</div>
</div>
CSS:
.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);
}
效果如下:
解析:backdrop-filter 属性用于在元素背景的后面应用滤镜效果。它可以让你创建出模糊、色彩变化或其他视觉效果来改变元素背景区域的外观。通过使用该属性,可以为元素的背景添加一层视觉效果,使背景与页面的其余内容产生视觉上的分离和层次感。这个属性通常与背景图像或颜色一起使用,以提供一种更加丰富和吸引人的设计效果。
当使用 input 或 textarea 元素时,可以使用 caret-color 属性来更改这些元素的文本光标颜色,以匹配网页的配色方案。
<input type="text" placeholder="Your Name" />
CSS:
input {
caret-color: red;
}
解析:caret-color 属性用于指定文本光标的颜色。文本光标是指在输入框或文本区域中表示当前输入位置的闪烁符号,该属性可以接受各种颜色值,例如十六进制颜色、RGB 值、颜色名称等。它可以应用于任何支持文本输入和编辑的元素,如 input、textarea 等。
可以使用 image-rendering 属性来控制缩放图像的渲染方式并优化质量。不过,该属性不会影响未经缩放的图像。
img {
image-rendering: pixelated;
}
解析:image-rendering 属性用于控制图像在浏览器中的渲染方式。它可以影响图像在缩放、旋转或变形等操作时的呈现质量。它提供了不同的值,可以让你选择最适合你需求的图像渲染方式。以下是一些常见的属性值:
以下是 image-rendering 属性的一些常见应用场景:
如果想要设置一个元素内容与其背景的混合效果,可以使用 mix-blend-mode
属性。
<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;
}
效果如下:
解析:mix-blend-mode 属性用于控制元素内容与其背景之间的混合模式。通过设置 mix-blend-mode 可以改变元素在视觉上与其周围元素的交互方式。这个属性可以应用于任何具有背景的元素,包括文本、图像和其他 HTML 元素。使用 该属性可以创造出各种独特的视觉效果,如颜色叠加、透明度混合、文字特效等。
常用的 mix-blend-mode 值包括:
可以使用 object-fit 属性来设置图像或视频的大小调整行为,使其适应其容器。
<div>
<img src="cat.jpg" alt="cat" />
</div>
CSS:
div {
width: 500px;
height: 400px;
border: 3px solid purple;
}
img {
width: 500px;
height: 300px;
object-fit: cover;
}
效果如下:
解析:object-fit 属性用于控制替换元素(如 <img>、<video> 或 <iframe>)在其容器中的尺寸调整行为。通过设置 object-fit 属性,可以更好地控制替换元素在容器中的尺寸调整行为,确保它们能够正确地适应容器并保持比例。
当替换元素的尺寸与其容器不匹配时,浏览器默认会根据一定规则调整元素的大小和比例。然而,这可能导致图像或视频失真,或者在容器中无法正确显示。object-fit 属性可以解决这个问题,它有以下几个取值:
object-position 属性与 object-fit 属性一起使用,用于指定图像或视频在其内容框内的 x/y 坐标上的位置。
<div>
<img src="cat.jpg" alt="cat" />
</div>
CSS:
div {
width: 500px;
height: 400px;
border: 3px solid purple;
}
img {
width: 500px;
height: 300px;
object-fit: cover;
object-position: bottom right;
}
效果如下:
这里设置了 object-position: bottom right; 这意味着在调整图像大小时,它将显示图像的右下角部分。
解析:object-position 属性用于指定替换元素(如 <img>、<video> 或 <iframe>)在其容器中的位置。它可以与 object-fit 属性一起使用,以控制替换元素的大小和位置。
当使用 object-fit 属性调整替换元素的大小时,可能会在容器中留下空白区域。object-position 属性允许我们根据需要将替换元素在容器内进行精确定位,以填充空白区域。
object-position 属性接受两个值:
可以使用 outline-offset 属性来指定描边与元素边框之间的间距。
<div></div>
div {
width: 300px;
height: 300px;
border: 3px solid purple;
outline: 3px solid rgb(81, 131, 148);
outline-offset: 10px;
}
效果如下:
解析:outline-offset 属性用于指定描边(outline)与元素边框之间的间距。它可以用来调整描边的位置和外观。默认情况下,描边与元素的边框紧密相邻,且没有间距。但是,通过使用 outline-offset 属性,可以在描边和边框之间创建一个间距,该属性接受长度值或百分比值。正值会将描边向外扩展,负值会将描边向内收缩。
可以使用 scroll-behavior 属性来实现平滑滚动,而无需使用任何 JavaScript,只需要一行 CSS 代码。
html {
scroll-behavior: smooth;
}
解析:scroll-behavior 属性用于控制页面滚动的行为。通过设置该属性的值,可以让页面在滚动时呈现出不同的效果,该属性支持两个值:
启用平滑滚动效果可以提升用户体验,使页面滚动更加流畅自然。此外,平滑滚动还有助于减少眼睛视觉的跳跃感和头晕感,并且能够更好地吸引用户的注意力。
当将 text-align 属性的值设置为 justify 时,可以使用 text-justify 属性来设置文本的对齐方式。
p {
text-align: justify;
text-justify: inter-character;
}
解析:text-justify 属性用于设置文本的对齐方式,当 text-align 属性的值设置为 justify 时生效。通过设置 text-justify 属性,可以控制文本在行内的分布方式,以填充行内的空白空间,从而实现文本的自动调整和对齐。该属性支持以下几个值: