iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > html >CSS中placeholder-shown的工作原理及应用
  • 867
分享到

CSS中placeholder-shown的工作原理及应用

2024-04-02 19:04:59 867人浏览 安东尼
摘要

这篇文章主要讲解了“CSS中placeholder-shown的工作原理及应用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS中placeholder-

这篇文章主要讲解了“CSS中placeholder-shown的工作原理及应用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS中placeholder-shown的工作原理及应用”吧!

CSS中placeholder-shown的工作原理及应用

使用此伪类来设置当前显示占位符文本的输入的样式,换句话说,用户未在文本框中键入任何内容

根据您的输入是否为空,应用一些动态样式非常好

input:placeholder-shown {
  border-color: pink;
}

CSS中placeholder-shown的工作原理及应用

它是如何工作的?

:placeholder-show 是CSS伪类,可让您将样式应用于具有占位符文本的 <input><textarea>

<input placeholder="placeholder text" />
<textarea placeholder="placeholder text"></textarea>

CSS中placeholder-shown的工作原理及应用

结果:

  • 如果显示占位符,则为粉红色,表示用户未输入任何内容

  • 如果未显示任何占位符,则为黑色,表示用户已键入内容

:placeholder-showd必须具有占位符

如果元素没有占位符文本,则此选择器将不起作用。

<input /><!-- 没有占位符 -->

<!-- 这也被视为没有占位符文本 -->
<input placeholder="" />
input:placeholder-shown {
  border-color: pink;
}

CSS中placeholder-shown的工作原理及应用

:placeholder-shown vs ::placeholder

因此,我们可以使用 :placeholder-shown 设置输入元素的样式。

input:placeholder-shown {
  border: 1px solid pink;
  background: yellow;
  color: green;
}

CSS中placeholder-shown的工作原理及应用

☝️嗯...注意到有些奇怪——我们将颜色设置为:绿色,但没有用。好吧,这是因为 :placeholder-shown 只针对输入本身。但是对于实际的占位符文本,您必须使用伪元素 ::placeholder

input::placeholder {
  color: green;
}

CSS中placeholder-shown的工作原理及应用

但是!当我在处理这个问题时,我注意到还有一些其他属性,如果在 :placeholder-shown 级别应用,将会影响到占位符文本。

input:placeholder-shown {
  font-style: italic;
  text-transfORM: uppercase;
  letter-spacing: 5px;
}

CSS中placeholder-shown的工作原理及应用

现在,我真的不知道为什么会发生这种情况,也许是因为这些属性被占位符继承了。

:placeholder-shown vs :empty

尽管 :placeholder-shown 是专门用于确定元素是否显示占位符的。实际上,我们可以使用它来检查输入是否为空(当然,假设所有输入都有一个占位符)。因此,也许您的下一个问题是,我们不能使用CSS empty吗?好吧,让我们检查一下

<input value="not empty">
<input><!-- empty -->
input:empty {
  border: 1px solid pink;
}

input {
  border: 1px solid black;
}

CSS中placeholder-shown的工作原理及应用

期待:

  • 如果为空则为粉红色

  • 如果不为空为黑色

嗯...从这里开始,您可能会认为 :empty 似乎在起作用,因为我们看到的是粉红色边框。但这实际上不起作用

粉红色显示的原因是因为伪类增加了特异性,类似于类选择器(即 .form-input)比类型选择器(即 input)具有更高的特异性。高特异性选择器将始终覆盖低特异性设置的样式。

这是判决!不要使用 :empty 检查输入元素是否为空

如何在没有占位符的情况下检查输入是否为空?

好了,所以我们检查输入是否为空的唯一方法是使用 :placeholder-shown。但是,如果我们的输入元素没有占位符,会发生什么情况?好吧,这是一个聪明的方法!传入一个空字符串 " "

<input placeholder=" "><!--  传递空字符串 -->
input:placeholder-shown {
  border-color: pink;
}

CSS中placeholder-shown的工作原理及应用

与其他选择器组合

所以,我们可以针对显示占位符文字的输入元素,这很酷。换句话说,如果显示了占位符文本,那么一定意味着该元素是空的。利用这些知识,我们可以将这个伪类与其他选择器结合起来,做一些非常整洁的事情!让我们来看看。

反向 :placeholder-shown:not

我们可以使用 :not 伪类来做一些反向的事情。在这里,我们可以在输入不是空的时候进行目标操作。

<input placeholder="placeholder" value="not empty" />
input:not(:placeholder) {
  border-color: green;
}

CSS中placeholder-shown的工作原理及应用

结果:

  • 绿色,如果不为空,则表示用户已经输入了一些内容。

  • 如果为空,则为黑色

浮动标签

使用占位符而不使用标签的问题之一就是无障碍,因为一旦你在打字的时候,占位符文字就没有了,这可能会导致用户的困惑。一个真正好的解决方案是浮动标签。最初,占位符文本显示时没有标签,而一旦用户开始输入,标签就会出现。这样一来,你仍然可以在不影响用户体验和可访问性的前提下,保持表单的简洁性。双赢

而这是可以用纯CSS实现的,我们只需要将 placeholder-shown:not+ 结合起来就可以了。这是一个超级简化版的浮动标签。

<input name="name" placeholder="Type name..." />
<label for="name">NAME</label>
label {
  display: none;
  position: absolute;
  top: 0;
}

input:not(:placeholder-shown) + label {
  display: block;
}

CSS中placeholder-shown的工作原理及应用

浏览器支持

:placeholder-shown 的支持非常好!这包括Internet Explorer(是的,我和你一样惊讶)。但是,对于IE,你需要使用非标准名称 :-ms-input-placeholder

CSS中placeholder-shown的工作原理及应用

感谢各位的阅读,以上就是“CSS中placeholder-shown的工作原理及应用”的内容了,经过本文的学习后,相信大家对CSS中placeholder-shown的工作原理及应用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: CSS中placeholder-shown的工作原理及应用

本文链接: https://www.lsjlt.com/news/70980.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • CSS中placeholder-shown的工作原理及应用
    这篇文章主要讲解了“CSS中placeholder-shown的工作原理及应用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS中placeholder-...
    99+
    2024-04-02
  • CSS中的placeholder-shown怎么使用
    今天小编给大家分享一下CSS中的placeholder-shown怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。使用...
    99+
    2023-07-04
  • CSS hack的工作原理
    本篇内容主要讲解“CSS hack的工作原理”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“CSS hack的工作原理”吧!CSS hack简介CSS hack由...
    99+
    2024-04-02
  • CSS Hack的工作原理和用法
    本篇内容介绍了“CSS Hack的工作原理和用法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!你对CSS ...
    99+
    2024-04-02
  • Linux sed工具的使用及工作原理
    目录基础知识sed编辑器: Stream Editor工作原理:sed的基本用法sed的命令格式sed实现自动打印功能(最基本用法)sed选项sed的脚本格式sed脚本的地址格式se...
    99+
    2024-04-02
  • ThreadLocal工作原理及用法案例
    目录ThreadLocal是什么ThreadLocal原理ThreadLocal内存泄漏问题关于InheritableThreadLocal代码示例ThreadLocal使用Inhe...
    99+
    2024-04-02
  • DIV+CSS的工作原理是什么
    这篇文章主要介绍“DIV+CSS的工作原理是什么”,在日常操作中,相信很多人在DIV+CSS的工作原理是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”DIV+CSS的工作...
    99+
    2024-04-02
  • Cookie的工作原理和应用详解
    目录1. Cookie 原理1.1 Cookie 背景信息1.2 Cookie 工作原理1.3 Cookie 创建、获取、修改1.4 Cookie 共享范围1.5 Cookie 生命...
    99+
    2024-04-02
  • CSS中Animations和Transitions的工作原理是什么
    这篇文章主要介绍“CSS中Animations和Transitions的工作原理是什么”,在日常操作中,相信很多人在CSS中Animations和Transitions的工作原理是什么问题上存在疑惑,小编查...
    99+
    2024-04-02
  • Linux sed工具的使用及工作原理是什么
    本文小编为大家详细介绍“Linux sed工具的使用及工作原理是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“Linux sed工具的使用及工作原理是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来...
    99+
    2023-07-02
  • ThreadLocal工作原理及用法是什么
    今天就跟大家聊聊有关ThreadLocal工作原理及用法是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。ThreadLocal是什么ThreadLocal是线程Thread中属性...
    99+
    2023-06-22
  • Python中HTTP响应的工作原理是什么?
    Python中HTTP响应的工作原理是什么? 在Python开发中,HTTP请求和响应是非常常见的操作。当我们发送HTTP请求时,服务器会返回一个HTTP响应。但是,你知道HTTP响应的工作原理是什么吗?在本文中,我们将深入探讨Python...
    99+
    2023-07-07
    http 响应 django
  • 剖析SpringWebFlux反应式编程设计及工作原理
    目录前言接口抽象WebServerReactiveWebServerFactoryHttpHandler启动流程分析ReactiveWebServerApplicationConte...
    99+
    2024-04-02
  • JavaScript中的this工作原理
    这篇文章主要介绍“JavaScript中的this工作原理”,在日常操作中,相信很多人在JavaScript中的this工作原理问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”...
    99+
    2024-04-02
  • redux工作原理讲解及使用方法
    目录1. redux 是什么?2.redux的原理3. 如何使用 redux?(1).安装redux,创建redux文件夹,建立store.js(2).建立reducers.js(3...
    99+
    2024-04-02
  • 工厂模式原理及其简单应用
    结合简单示例和UML图,讲解工厂模式简单原理。[@more@]一、引子话说十年前,有一个爆发户,他家有三辆汽车(Benz(奔驰)、Bmw(宝马)、Audi(奥迪)看来这人比较爱国,没有日本车),还雇了司机为他开车。不过,爆发户坐车时总是这样...
    99+
    2023-06-03
  • Gateway网关工作原理及使用方法
    目录1. 什么是 API 网关(API Gateway)分布式服务架构、微服务架构与 API 网关API 网关的定义API 网关的职能API 网关的分类与功能2. Gateway是什...
    99+
    2024-04-02
  • Java内存的原型及工作原理是什么
    这篇文章给大家介绍Java内存的原型及工作原理是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。主要通过分析Java内存分配的栈、堆以以及常量池详细的讲解了其的工作原理。一、java虚拟机内存原型寄存器:我们在程序中...
    99+
    2023-06-17
  • java中synchronized的原理以及作用
    本篇内容介绍了“java中synchronized的原理以及作用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!问题(1)synchroniz...
    99+
    2023-06-20
  • 解密ios响应链的工作原理
    目录事件响应链的工作原理响应者对象的特点自定义事件处理事件传递和事件响应事件拦截事件传递到父视图自定义事件响应链总结事件响应链是 iOS 开发中的一个核心概念,它描述了系统将用户交互...
    99+
    2023-03-22
    ios响应链 ios事件响应链
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作