涨姿势了,这 4 个场景可用 CSS 完全取代 JS ~

简介: 涨姿势了,这 4 个场景可用 CSS 完全取代 JS ~

本篇通译自:# It’s 2022. Sometimes You Don’t Need Javascript at All


1. 颜色选择器



我们通常需要通过复杂的 JavaScript 来实现一个类似下图的颜色选择器组件。

image.png


好消息来了,现在直接通过设置 input 标签属性,就自带这个颜色选择功能了~

<input type="color" value="#FF99FF" />

code.juejin.cn/pen/7164305…

image.png


涨姿势了,赶紧收藏一波、加强记忆,后面总会用到~


2. 打字效果



纯 CSS 就能实现以下“打字效果”

code.juejin.cn/pen/7164307…


HTML

<h1>Welcome to JUEJIN</h1>


css

@-webkit-keyframes typing { from { width: 0; } }
@-webkit-keyframes blink-caret { 50% { border-color: transparent; } }
h1 { 
    font: bold 300% Consolas, Monaco, monospace;
    border-right: .1em solid black;
    width: 16.5em; 
    width: 21ch;
    margin: 2em 1em;
    white-space: nowrap;
    overflow: hidden;
    -webkit-animation: typing 7s steps(21, end),
    blink-caret .5s step-end infinite alternate;
}


3. 滑顶/触底效果



我们通常是这样实现点击按钮,滚动条立即触顶/触底效果的:

const scrollToTop = () => {
  const c = document.documentElement.scrollTop || document.body.scrollTop
  if (c > 0) {
    window.requestAnimationFrame(scrollToTop)
    window.scrollTo(0, c - c / 8)
  }
}

现在不必了,CSS 一行代码就可解决了~

code.juejin.cn/pen/7164310…


4. 顺滑切图



原来 CSS scroll-snap-type: x mandatory; 可以让你顺滑切图。当你滑动横向滚动条到一定位置时,会自动为你切图,这样显得流畅;

code.juejin.cn/pen/7164311…


是否更顺滑,实际效果可以在码上掘金上去掉 scroll-snap-type: x mandatory 这一行,前后对比一试便知。


小结



另,推荐最近 3 篇关于 CSS 文章:

# CSS 如何实现五彩斑斓的“呼吸字”?速度拿去装杯!😏

# CSS 如何实现“咖啡墙错觉”效果?神奇~

# CSS 边框也能动画?background-origin 和 -clip 来施加魔法~

全部附上了码上掘金,代码可在线测试。

有一说一,CSS 还真的挺神奇~~

之前听一位后端同学说,因为觉得 CSS 样式太麻烦,看似与编程无关,于是放弃了做前端,转而做后端。。。。

其实,可能看起来麻烦,用起来还是有点意思~~相当于多个手段,可作武器。


相关文章
|
2月前
|
JavaScript 前端开发
JavaScript中有哪几种循环?他们的运用场景在哪?
JavaScript中有哪几种循环?他们的运用场景在哪?
|
7天前
|
JavaScript 前端开发
JavaScript HTML DOM - 改变CSS
JavaScript HTML DOM - 改变CSS
15 4
|
4天前
|
前端开发 JavaScript
HTML+JavaScript+CSS DIY 分隔条splitter
HTML+JavaScript+CSS DIY 分隔条splitter
用CSS+JavaScript打造网页中的选项卡
用CSS+JavaScript打造网页中的选项卡
|
6天前
|
自然语言处理 JavaScript 前端开发
JS中this的应用场景,再了解下apply、call和bind!
该文章深入探讨了JavaScript中`this`关键字的多种应用场景,并详细解释了`apply`、`call`和`bind`这三个函数方法的使用技巧和差异。
|
9天前
|
JavaScript 前端开发
JS配合CSS3实现动画和拖动小星星小Demo
本文通过代码示例展示了如何使用JavaScript和CSS3实现动画效果和拖动小星星的交互效果,包括文字掉落动画和鼠标拖动产生小星星动画的实现方法。
23 0
JS配合CSS3实现动画和拖动小星星小Demo
|
15天前
|
前端开发 JavaScript
uniapp动态修改css样式(通过js来修改css样式)
uniapp动态修改css样式(通过js来修改css样式)
|
23天前
|
Web App开发 前端开发 JavaScript
HTML/CSS/JS学习笔记 Day3(HTML--网页标签 下)
HTML/CSS/JS学习笔记 Day3(HTML--网页标签 下)
|
20天前
|
XML JavaScript 前端开发
JavaWeb基础4——HTML,JavaScript&CSS
HTML,JavaScript&CSS、元素、标签、css 选择器、属性、JavaScript基础语法、JavaScript对象、BOM浏览器对象模型、DOM文档对象模型、事件监听、正则对象RegExp/ES6
JavaWeb基础4——HTML,JavaScript&CSS
|
6天前
|
JavaScript 前端开发
网页前端课程设计-【模仿】香港中文大学官网,轮播图及div+css布局,js的dom操作
这篇文章介绍了如何模仿香港中文大学官网进行网页前端课程设计,包括使用div+css布局、js的DOM操作以及实现轮播图等技术细节。