目录
覆盖默认浏览器行为
大多数现代浏览器,包括Chrome,Firefox,Safari和Edge。但是,Internet Explorer 9和更早版本中不支持它。您可以在网站上查看当前的浏览器兼容性,例如我可以使用。
,HTML5 DATALIST元素的样式选项非常有限。下拉列表的外观由浏览器控制,无法通过CSS自定义。但是,您可以为与数据师关联的输入字段进行样式。
>我可以将多个数据师用于单个输入字段吗?
>我可以将HTML5 Datalist与其他输入类型一起使用吗? ,HTML5 DataList可以与各种输入类型一起使用,包括文本,搜索,电话,电子邮件,日期,月,每周,时间,时间,日期,本地,数字,范围,范围和颜色。但是,对某些输入类型(例如范围或颜色)的自动完成功能可能无法正常工作。
首页 web前端 css教程 使用HTML5数据师轻量级自动完成控件

使用HTML5数据师轻量级自动完成控件

Feb 10, 2025 pm 03:18 PM

使用HTML5数据师轻量级自动完成控件

在本教程中,我们将深入了解少量使用的HTML5 元素。它可以实现不需要JavaScript的轻巧,易于访问,跨浏览器自动完成的表单。

钥匙要点

    html5`
  • `元素为自动完整的表单控件提供了轻巧,易于访问和跨浏览器解决方案,而无需依赖JavaScript。 > `,````````````'>```````'
  • 浏览器对
  • `在包括Internet Explorer 10和11在内的现代浏览器中具有强大的功能,其中可用于旧浏览器的后备选项使用`>'和文本输入的组合。 🎜> `元素不能直接用CSS来设计,该元素可以限制自定义,但可以确保在不同的浏览器和平台上保持一致性。
  • >诸如Ajax之类的增强功能可以与``>''>
  • 控件是理想的选择。它们在以下情况时不太实用:
  • 有很多选择,例如国家或职位标题
  • 用户想要输入自己的选项,该选项不在列表中>

明显的解决方案是自动完成控制。这允许用户输入几个字符,该字符限制了可快速选择的选项。>

与文本输入结合使用。改编国家示例:
<span><span><span><datalist</span> id<span>="countrydata"</span>></span>
</span>  <span><span><span><option</span>></span>Afghanistan<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Åland Islands<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Albania<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Algeria<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>American Samoa<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Andorra<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Angola<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Anguilla<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Antarctica<span><span></option</span>></span>
</span>  ...etc...
<span><span><span></datalist</span>></span>
</span>
登录后复制
登录后复制
登录后复制
登录后复制

请参阅pen
html5 sitepoint(@sitepoint)
上的自动完成后返回。

>

在现代浏览器中,元素成为的一部分,而”或其他标签未显示。它看起来与上面的示例相同,但是乡村的形式值将设置为一个空字符串。 在IE9及以下,(非常长的)盒子,
…您很容易!
可以将其视为正常的样式,但是链接的及其子元素不能在CSS中进行样式。列表渲染完全由平台和浏览器确定。

> 我希望这种情况能有所改善,但是目前,在MDN提出了一种解决方案,该解决方案:

覆盖默认浏览器行为

>有效地对待

,因此可以在CSS 中进行样式 重复JavaScript中的所有自动完整功能

>我已经进一步增强了它,并且代码可在GitHub上使用。要使用它,请作为ES6模块中的HTML页面中的任何位置加载脚本。可以使用JSDELIVR CDN URL:

<span><span><span><datalist</span> id<span>="countrydata"</span>></span>
</span>  <span><span><span><option</span>></span>Afghanistan<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Åland Islands<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Albania<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Algeria<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>American Samoa<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Andorra<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Angola<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Anguilla<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>Antarctica<span><span></option</span>></span>
</span>  ...etc...
<span><span><span></datalist</span>></span>
</span>
登录后复制
登录后复制
登录后复制
登录后复制

>,如果您使用的是捆绑器:,则可以使用NPM安装它:

<span><span><span><label</span> for<span>="country"</span>></span>country<span><span></label</span>></span>
</span>
<span><span><span><input</span> type<span>="text"</span>
</span></span><span>  <span>list<span>="countrydata"</span>
</span></span><span>  <span>id<span>="country"</span> name<span>="country"</span>
</span></span><span>  <span>size<span>="50"</span>
</span></span><span>  <span>autocomplete<span>="off"</span> /></span>
</span>
登录后复制
登录后复制
登录后复制
>您的元素必须使用 value 格式。例如:

<span><span><span><datalist</span> id<span>="mylist"</span>></span>
</span>  <span><span><span><option</span>></span>label one<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>label two<span><span></option</span>></span>
</span>  <span><span><span><option</span>></span>label three<span><span></option</span>></span>
</span><span><span><span></datalist</span>></span>
</span>
登录后复制
登录后复制
>

注意:无法使用,因为它会导致无法定型的空元素!> 然后可以添加

CSS以样式一些或全部和元素。例如:

<span><span><span><datalist</span> id<span>="mylist"</span>></span>
</span>  <span><span><span><option</span> value<span>="label one"</span> /></span>
</span>  <span><span><span><option</span> value<span>="label two"</span> /></span>
</span>  <span><span><span><option</span> value<span>="label three"</span> /></span>
</span><span><span><span></datalist</span>></span>
</span>
登录后复制
登录后复制
>示例:

>请参阅pen

html5 autocomplete css findling by sitepoint(@sitepoint)
> codepen。

>造型有效,但是值得付出努力吗?

我不怀疑……

>

>重新实现浏览器的标准键盘,鼠标和触摸控件,并具有合理的可访问性。 MDN示例不支持键盘事件,尽管我试图改进该事件,但某些设备上不可避免地会有问题。
    >
  • >您依靠200行JavaScript来解决CSS问题。它的缩小为1.5kb,但是如果您在同一页面上需要许多元素,则可能会引入性能问题。
  • 如果JavaScript是必需的,最好使用更漂亮,更一致,经过战斗测试的JavaScript组件?
  • >当JavaScript失败时,控件返回到标准的HTML5 而无需样式,但这是一个较小的好处。
  • >
创建AJAX-增强

>假定您的设计师很乐意接受浏览器样式差异,可以使用JavaScript增强标准功能。例如:

实现可选验证,该验证仅接受中的已知值

set

以上是使用HTML5数据师轻量级自动完成控件的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

带有粘性定位的堆叠卡和一点点的杂物 带有粘性定位的堆叠卡和一点点的杂物 Apr 03, 2025 am 10:30 AM

前几天,我发现了科里·金尼文(Corey Ginnivan)网站上的这一点,当您滚动时,彼此之间的卡片堆放集。

Google字体可变字体 Google字体可变字体 Apr 09, 2025 am 10:42 AM

我看到Google字体推出了新设计(Tweet)。与上一次大型重新设计相比,这感觉更加迭代。我几乎无法分辨出区别

如何使用HTML,CSS和JavaScript创建动画倒计时计时器 如何使用HTML,CSS和JavaScript创建动画倒计时计时器 Apr 11, 2025 am 11:29 AM

您是否曾经在项目上需要一个倒计时计时器?对于这样的东西,可以自然访问插件,但实际上更多

为什么Flex布局中的紫色斜线区域会被误认为是'溢出空间”? 为什么Flex布局中的紫色斜线区域会被误认为是'溢出空间”? Apr 05, 2025 pm 05:51 PM

关于Flex布局中紫色斜线区域的疑问在使用Flex布局时,你可能会遇到一些令人困惑的现象,比如在开发者工具(d...

如何通过CSS选择第一个类名为item的子元素? 如何通过CSS选择第一个类名为item的子元素? Apr 05, 2025 pm 11:24 PM

在元素个数不固定的情况下如何通过CSS选择第一个指定类名的子元素在处理HTML结构时,常常会遇到元素个数不�...

HTML数据属性指南 HTML数据属性指南 Apr 11, 2025 am 11:50 AM

您想了解的有关HTML,CSS和JavaScript中数据属性的所有信息。

使Sass更快的概念证明 使Sass更快的概念证明 Apr 16, 2025 am 10:38 AM

在一个新项目开始时,Sass汇编发生在眼睛的眨眼中。感觉很棒,尤其是当它与browsersync配对时,它重新加载

在前端开发中,如何使用CSS和JavaScript实现类似Windows 10设置界面的探照灯效果? 在前端开发中,如何使用CSS和JavaScript实现类似Windows 10设置界面的探照灯效果? Apr 05, 2025 pm 10:21 PM

在前端开发中如何实现类似Windows...

See all articles