【CSS 选择器世界】 占位符显示伪类 :placeholder-shown

简介: 占位符显示伪类 :placeholder-shown

前言


:placeholder-shown 伪类的匹配和 placeholder 属性密切相关,顾名思义就是“占位符显示伪类”,表示当输入框的 placeholder 内容显示的,匹配该输入框。


正文


一、实现 Material Design 风格占位符交互效果


这种交互风格,输入框处于聚焦状态时,输入框的占位符内容以动画形式移动到左上角作为标题存在。


现在这种设计在移动端很常见,因为宽度较稀缺。相信不少人在实际项目中实现过这种交互,而且,一定是借助 JavaScript 实现的。


实际上,我们可以借助 CSS:placeholder-shown 伪类(纯 CSS,无任何 JavaScript)实现这样的占位符交互效果。如图所示:



2.webp (1).jpg

textarea-交互前


3.webp.jpg

textarea-交互后


HTML 代码:


<div className={"input-fill-x"}>
                        <textarea className={"input-fill"} placeholder={"邮箱"}/>
                        <label className={"input-label"}>邮箱</label>
                    </div>


CSS 代码:


input {
  border: 2px solid gray;
}
input:placeholder-shown {
  border: 2px solid black;
}
.input-fill:placeholder-shown::placeholder {
  color: transparent;
}
.input-fill-x {
  position: relative;
}
.input-label {
  position: absolute;
  //left: 16px;
  //top: 14px;
  left: 0.2%;
  top: 2px;
  font-size: 0.9em;
  pointer-events: none;
}
.input-fill {
  padding: 1em;
}
.input-fill:not(:placeholder-shown) ~ .input-label,
.input-fill:focus ~ .input-label {
  transform: scale(0.75) translate(0, -1em);
  background-color: white;
  padding: 0 .2em;
}

学 CSS 选择器过程中,发现很多动效都是可以通过纯 CSS 的伪类特性来实现,这就是往深度学习的乐趣吧。

目录
相关文章
|
3月前
|
前端开发
CSS:高级选择器
CSS:高级选择器
50 1
|
3月前
|
前端开发 JavaScript
CSS:基础选择器
CSS:基础选择器
51 1
|
23天前
|
存储 移动开发 前端开发
高效的 HTML 与 CSS 编写技巧,涵盖语义化标签、文档结构优化、CSS 预处理、模块化设计、选择器优化、CSS 变量、媒体查询等内容
本文深入探讨了高效的 HTML 与 CSS 编写技巧,涵盖语义化标签、文档结构优化、CSS 预处理、模块化设计、选择器优化、CSS 变量、媒体查询等内容,旨在提升开发效率、网站性能和用户体验。
35 5
|
27天前
CSS3注册表单文本框占位符特效源码
CSS3注册表单文本框占位符特效源码是一段简单的css3 input文本框占位符,placeholders占位符内容填写注册表单特效,非常有意思,欢迎有兴趣的朋友前来下载使用。
28 5
|
1月前
|
前端开发 JavaScript UED
深入理解与应用 CSS 伪类选择器
【10月更文挑战第23天】通过以上对 CSS 伪类选择器的深入探讨,我们可以更好地理解和应用它们,为网页设计和开发带来更丰富、更灵活的样式效果。同时,要注意在实际应用中根据具体情况合理选择和使用伪类选择器,以达到最佳的设计效果和用户体验。
48 2
CSS3 新增伪类有那些
CSS3 引入了多种新伪类,增强了样式控制的灵活性。新增的结构伪类如 `:nth-child(n)` 和 `:first-of-type` 可以根据元素的位置和类型进行选择;状态伪类如 `:enabled` 和 `:checked` 则根据元素的状态进行选择;动态伪类如 `:hover` 和 `:active` 则基于用户的交互行为。这些伪类让样式定制更加多样和强大。
|
3月前
|
前端开发 JavaScript 容器
谁动了我的选择器?深入理解CSS选择器优先级
该文章详细解释了CSS选择器的工作原理,包括不同种类选择器的权重计算规则,并通过实例说明了如何解决样式冲突问题,确保所需的样式能够正确应用到目标元素上。
|
3月前
|
前端开发
前端基础(四)_CSS层叠样式表_什么是css_css样式的引入方式_样式表的优先级_样式选择器
本文详细介绍了CSS(层叠样式表)的基本概念、语法规则、引入方式、样式表的优先级和样式选择器。文章解释了CSS的作用,展示了如何在HTML中通过行内样式、内部样式和外部样式引入CSS,讨论了不同CSS选择器的优先级和如何确定最终的样式应用。此外,还强调了使用`!important`规则时的优先级高于行内样式。
104 1
|
2月前
|
前端开发
运用CSS伪类与属性,巧妙实现背景图片旋转效果
运用CSS伪类与属性,巧妙实现背景图片旋转效果
45 0
|
2月前
|
前端开发
CSS常见的选择器
CSS常见的选择器
25 0