掘友等级
获得徽章 0
找到最接近的数值const closest = (arr, n) => arr.reduce((prev, curr) => (Math.abs(curr - n) < Math.abs(prev - n) ? curr : prev))closest([29, 87, 8, 78, 97, 20, 75, 33, 24, 17], 50) // 33
#每天一个知识点#
悬停缩放效果.img-container { height: 250px; width: 250px; overflow: hidden;}.img-container img { height: 100%; width: 100%; object-fit: cover; transition: transform 200m ease-in; } img:hover { transform: scale(1.2); }
#每天一个知识点#
裁剪各种形状可以使用 clip-path 属性来创建各种有趣的视觉效果,例如将元素剪裁成自定义形状,如三角形或六边形。div { height: 150px; width: 150px; background-color: crimson;}
#每天一个知识点#
检测属性支持在 CSS 中可以使用 @support 规则来检测对 CSS 特性的支持:@supports (accent-color: #74992e) { blockquote { color: crimson; }}
#每天一个知识点#
实现首字下沉
使用::first-letter来实现文本首字母的下沉:p.texts:first-letter { font-size: 200%; color: #8A2BE2;}
#每天一个知识点#
将文本设为大写或小写
大写或小写字母可以不必在 HTML中设置。可以在 CSS 中使用text-transform熟悉来强制任何文本为大写或小写。
/* 大写 */
.upper {
text-transform: uppercase;
}
/* 小写 */
.lower {
text-transform: lowercase;
}
#每天一个知识点#
文本强调效果
可以使用 text-emphasis 属性将强调标记应用于文本元素。可以指定包括表情符号在内的任何字符串作为强调标记。
h1 {
text-emphasis: "⭐️";
}
#每天一个知识点#
自定义光标
可以通过 CSS 中的cursor属性来自定义光标的样式,只需要指定自定义光标的图片路径即可:
body{
cursor: url("path-to-image.png"), auto;
}
#每天一个知识点#
毛玻璃特效
可以使用 CSS 中的 backdrop-filter 属性来实现毛玻璃特效:
.login {
backdrop-filter: blur(5px);
}
#每天一个知识点#
暂停/播放伪类
使用 :paused 伪类可以为处于暂停状态的媒体元素设置样式,那自然就还有 :playing 伪类,它可以为处于播放状态的媒体元素设置样式。
video:paused {
opacity: 0.6;
}
#每天一个知识点#
将文本设为大写或小写
大写或小写字母可以不必在 HTML中设置。可以在 CSS 中使用text-transform熟悉来强制任何文本为大写或小写。
/* 大写 */
.upper {
text-transform: uppercase;
}
/* 小写 */
.lower {
text-transform: lowercase;
}
#每天一个知识点#
文字描边效果
在 CSS 中可以使用 text-stroke 属性使文本更易读,它会向文本添加轮廓效果。
h1 {
color: #fff;
font-size: 80px;
-webkit-text-stroke: 2px crimson;
text-stroke: 2px crimson;
}
#每天一个知识点#
图像填充文字效果
要想实现图像填充文字效果,可以设置 background-clip: text 以使文字背景作为整个区域的背景,文字之外的区域将被裁掉。配合透明的文字颜色,就可以实现图像填充文字效果了:
h1 {
background-image: url('./flower.jpg');
background-clip: text;
-webkit-background-clip: text;
color: transparent;
background-color: white;
}
#每天一个知识点#
背景混合模式
在CSS中可以使用 background-blend-mode 来实现元素背景的混合:
.blend-1 {
background-image: url(
duomly.nyc3.digitaloceanspaces.com);
width: 100vw;
height: 500px;
background-size: cover;
}
.blend-2 {
background-image: url(
duomly.nyc3.digitaloceanspaces.com);
width: 100vw;
height: 500px;
background-color: #20126f;
background-size: cover;
background-blend-mode: overlay;
#每天一个知识点#
实现平滑滚动
可以使用CSS的scroll-behavior属性来实现在网页上进行平滑滚动,而无需编写复杂的 JavaScript 或使用插件。可以用于页面锚点之间的滚动或者返回顶部等功能。
html {
scroll-behavior: smooth;
}
#每天一个知识点#
:where() 简化代码
当对多个元素应用相同的样式时,CSS 可能如下:
.parent div,
.parent .title,
.parent #article {
color: red;
}
这样代码看起来可读性不是很好,:where() 伪类这时就派上用场了。**:where()** 伪类函数接受选择器列表作为它的参数,将会选择所有能被该选择器列表中任何一条规则选中的元素。
上面的代码使用:where()就可以这么写:
.parent :where(div, .title, #article) {
color: red;
}
#每天一个知识点#
图片文字环绕
shape-outside 是一个允许设置形状的 CSS 属性。它还有助于定义文本流动的区域:
.any-shape {
width: 300px;
float: left;
shape-outside: circle(50%);
}
#每天一个知识点#
Nuxt Hacker News 是一个使用 Nuxt 构建的 HackerNews 克隆,其具有以下特点:
服务端渲染
基于 Vite 的热更新(HMR)开发环境
#每天一个知识点#
17.# 检测黑暗模式
const isDarkMode = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
#每天一个知识点#
16.# 清除所有的cookie
const clearCookies = () => document.cookie.split(';').forEach((c) => (document.cookie = c.replace(/^ +/, '').replace(/=.*/, `=;expires=${new Date().toUTCString()};path=/`)))
#每天一个知识点#
下一页