记录--新的HTML标签 :<search>

这篇具有很好参考价值的文章主要介绍了记录--新的HTML标签 :<search>。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助

记录--新的HTML标签 :<search>

本文介绍了一种新的HTML元素搜索方法,并提供了一个实用的工具来帮助开发者快速找到所需的元素。这对于那些需要处理大量HTML元素的开发者来说是非常有用的。文章还通过提供一些常见元素的用法示例,帮助开发者更好地理解和应用这些元素。在众多元素中找到特定的元素。为了解决这个问题,文章介绍了一种新的HTML元素搜索方法。

下面是正文

一个新的语义元素已经加入了 HTML 标准 。它代表文档中用于搜索或过滤的部分。它应该包含表单控件(如文本输入、下拉菜单、按钮等),搜索/过滤的范围可以是任何内容:从同一文档到整个互联网。

如何运作

<search> 元素之前,我们可以在 <form> 标签中添加 role="search" 以指示该表单用于搜索:

<form role="search" method="get" action="/search">
  <input type="search" name="search-text" />
  <button>Search</button>
</form>

有了这个新添加的功能,我们可以使用 <search> 标签来包装表单:

由于 <search> 是标准中的新内容,所有浏览器、屏幕阅读器和其他工具可能需要一段时间才能跟上。在此期间,我们可以使用一个 hack,指定它已经具有的 ARIA 角色(类似于 <nav> 所发生的情况)。这在未来可能会变得多余,但它可能会为我们的代码做好准备,以便在浏览器支持新标签时使用。

<search role="search">
   ...
</search>

这看起来有些违反直觉:我们正在移除 role="search" ,但我们正在用<search>包装所有内容。总体而言,这是更多的文本/代码(仅三个字符)和更多的嵌套(一个更高的级别)。

温馨提示:尽管我们在构建搜索组件时并不强制需要

标签,但是使用它却能带来额外的好处(甚至是必须的)。这样,即使在无JavaScript环境下,搜索功能也能保持正常运行,或者说,这是一种实践渐进式增强策略的方式。

另一个需要注意的关键点是,搜索区域不一定是网站或在线平台上带有搜索按钮的文本输入框。我们可以使用 <search> 来过滤结果或表格行。它的实用性不仅限于文本输入和搜索框:

<search>
  <h2>Filter results</h2>

  <form>
    <label for="cartype">Car type</label>
    <select id="cartype">
      <option value="coupe">Coupe</option>
      <option value="sedan">Sedan</option>
    </select>

    <label for="electric">Electric?</label>
    <input type="checkbox" id="electric" />
  </form>
</search>

看法

拥有一个用于识别搜索区域的元素是很好的。正如Scott O'Hara在这篇文章中指出的那样,直到现在,这是唯一一个在HTML中没有语义等效项的ARIA地标角色:

  • banner → <header>
  • complementary → <aside>
  • form → <form>
  • main → <main>
  • navigation → <nav>
  • region → <section>
  • search → ???

使用 <search> 来标识应具有“搜索”角色的部分,我们将使用一些语义化的 HTML 元素覆盖所有 ARIA 地标角色。这很棒:它将提高可访问性(尽管如上所述,需要一段时间才能让所有浏览器跟上),并扩展了语言的语义。

但是,从程序员的角度来看,它感觉不够完善或没有为现有的实现增加太多东西。其他语义元素可以提高可访问性并简化我们编写特定组件的方式。例如,像 <tabpanel> <tab> 这样的东西,在我看来会更具说服力和价值。

这并不会削弱它的重要性。所有的改进 - 即使是微小的改进 - 都是受欢迎的。这也适用于 <search> 。这是 HTML 家族的一个极好的新成员。

代码部署后可能存在的BUG没法实时知道,事后为了解决这些BUG,花了大量的时间进行log 调试,这边顺便给大家推荐一个好用的BUG监控工具 Fundebug。

本文转载于:

https://juejin.cn/post/7236372620999868477

如果对您有所帮助,欢迎您点个关注,我会定时更新技术文档,大家一起讨论学习,一起进步。

 记录--新的HTML标签 :<search>文章来源地址https://www.toymoban.com/news/detail-493755.html

到了这里,关于记录--新的HTML标签 :<search>的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C++学习笔记八:极限和数学运算<limits><cmath>

    1) limits库: 1.1 源文档: https://en.cppreference.com/w/cpp/types/numeric_limits #include limits   1.2 库函数: 函数解释: 对于一个浮点数,lowest表示最小的可表示的负数,min表示最小的可表示的接近0的数,max表示最大的可表示的正数 对于一个有符号整数,min表示可以表示的最小的负数,

    2024年02月05日
    浏览(40)
  • 详解dedecms后台编辑器将回车<br>改为<p>的方法

    DEDECMS编辑器默认回车[确认键]是返回 这样的。 有时候我们需要返回 这样的,今天我们就讲讲后台编辑器将回车将 改为 的有效教程吧。 方法也很简单,首先我们找到dedecms后来台编辑器的配置文件。 所在路径为:/include/ckeditor/config.js 我们打开它,里面有两个字: 替换为 这

    2024年02月02日
    浏览(49)
  • class<T extends interface> 或 class<T extends abstract class>

    Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。 类型通配符一般是使用 ? 代替具体的类型参数 要声明一个有界的类型参数,首先列出类型参数的名称,后跟extends,最后紧跟它的上界

    2024年02月12日
    浏览(37)
  • 将较大的数组赋值<el-table></el-table>时,会导致页面卡顿,甚至崩溃

    遇到的问题:将长度为40的数组数据赋值el-table/el-table,我发现loading没有效果,后面发现是页面卡住了,loading直接没有出现。 经过查询资料,发现el-table会有卡顿的问题,看到有的博主推荐使用一款叫umy-ui的插件,我就试了试,发现卡顿的问题解决了。 官网: http://www.umyui

    2024年02月05日
    浏览(62)
  • ChatGPT还是有点东西的-public static <T> List<T> Arrays.asList(T... a) {...}

    业务开发需要判断业务状态是否在30、40、50、60的集合内,所以写了以下代码 自我Review代码时,验证了下这行代码,发现状态为30时,仍然返回false。 在自我怀疑中调整代码,并验证,代码如下: 没想很明白,于是问了下ChatGPT。 Arrays.asList() 方法返回的结果类型取决于传入的

    2024年02月12日
    浏览(39)
  • protolator - Protobuf <==> json

    github.com/hyperledger/fabric-config/protolator 是 Hyperledger Fabric 中的一个 Go 包,用于将 Protocol Buffers(ProtoBuf)消息和 JSON 格式之间进行转换。它提供了一种方便的方式来将 Fabric 配置文件(以 ProtoBuf 格式表示)与 JSON 配置文件之间进行相互转换。这对于 Fabric 的配置管理和部署非常有

    2024年02月15日
    浏览(33)
  • <四>move移动语义和forward类型转发

    move : 移动语义,得到右值类型 forward:类型转发,能够识别左值和右值类型 只有两种形式的引用,左值引用和右值引用,万能引用不是一种引用类型,它存在于模板的引用折叠情况,但是能够接受左值和右值 区分左值和右值得一个简单方式就是能不能取地址 一个右值一旦有名字那

    2024年02月02日
    浏览(35)
  • <五>move移动语义和forward类型转发

    move : 移动语义,得到右值类型 forward:类型转发,能够识别左值和右值类型 只有两种形式的引用,左值引用和右值引用,万能引用不是一种引用类型,它存在于模板的引用折叠情况,但是能够接受左值和右值 区分左值和右值得一个简单方式就是能不能取地址 一个右值一旦有名字那

    2024年02月02日
    浏览(39)
  • 编写高性能C#代码 —— Span<T>

    Span 提供任意内存的连续区域的类型安全和内存安全表示形式。它是在堆栈而不是托管堆上分配的ref结构,是对任意内存块的抽象 。 在NET Core 2.1中首次引入 提供对 任意 内存上的连续区域的读写 视图 利用索引/迭代来修改范围内的内存 几乎无开销   Span 表示 任意内存的连续

    2024年02月05日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包