当涉及UI组件时,我们可以使用两种通用方法为您的网站构建它:我们可以使用著名库或框架中的预构建组件,或者我们可以从Scratch开发我们的UI组件。
开发独特的CSS组件是一个更好的策略,因为我们可以将它们作为开发人员提供更多控制权,并且可以在需要时更改值。作为前端开发人员已有三年多的时间,使自定义选择的下拉列表组件用于导航,从列表中选择选项或过滤提供的选择是构建用户接口的最常见需求之一。
< select >
标签有几种用例库,包括引导程序,材料UI和ANT设计,并且每个图书馆都有自己的自定义CSS选择下拉菜单的实现。它们非常可靠,并且已经证明了跨浏览器功能。
来源
跨浏览器下拉造型非常具有挑战性。设计师总是会创建有吸引力的下拉列表,但是每个浏览器都会使它们略有不同。您可以从Browser Engines: The Crux Of Cross Browser Compatibility.上的此博客中了解有关浏览器渲染的更多信息
考虑跨浏览器功能时,使用CSS框架或库是有益的,因为它们处理创建特定组件所涉及的所有幕后任务。
使用这些CSS libraries和Bootstrap或Tailwind CSS等框架时,跨浏览器功能是最重要的,因为最终用户使用不同的操作系统,浏览器和设备。如果我们希望每个人都有相同的经验,我们应该只使用在所有设备,操作系统和浏览器上都可以正常工作的库和框架。大多数现代框架都认为需要cross browser compatibility并保持设备友好的样式。
在自定义CSS选择菜单上的这个深入博客中,我们将介绍创建各种自定义CSS选择菜单的过程。
所以,让我们开始!
Emulators Online lambdatest允许您在移动浏览器和移动设备上无缝测试移动应用程序,网站和Web应用程序。
什么是html选择标签?
HTML元素< select >
代表带有选择菜单的控件。通常,我们使用Select元素创建下拉列表。 < select >
元素最常以表格来收集用户输入。
选择标签使用各种属性,可提供有关HTML元素的其他详细信息。如果我们省略了名称属性,则不会提交下拉列表中的数据。需要ID属性将下拉列表与标签相关联。
<select>
<option>
</option>
...
</select>
当我们询问网站登录表单或导航栏中用户国家 /地区的信息时,通常使用< select >
元素。为了维护网站的可访问性,我们经常使用标签标签使其可访问且最终用户更好。
各种选择的标签属性是什么?
HTML属性是开放标签中使用的唯一关键字,用于调节元素的行为。 HTML属性是HTML元素的一种修饰符。该属性提供了有关HTML元素的其他信息。
选择标签具有各种特征,包括:
-
autocus(type'布尔值): html < select >
autococus属性用于指定,当页面加载或当页面加载时,下拉列表应自动集中用户到达某个视口。
-
必需(键入布尔值): html < input >
所需属性表明用户必须在提交表单之前选择一个值。所需的属性是一个布尔属性。各种输入类型都支持所需属性,包括文本,搜索,网址,电话,电子邮件,密码,选定器,数字,复选框,收音机和文件。
-
多重(type'布尔值): html多个属性指定用户可以从给定的多个选项(或值)从给定选择多个选项(或值) < select >
元素中的选项列表。此外,它可以与< input >
标签一起使用。
-
禁用(类型布尔值):指示选定元素被禁用,我们使用禁用属性。无法使用或单击禁用的下拉列表。它也是布尔属性。
-
名称(type'字符串):使用名称属性指定下拉列表的名称。提交后,它可以在JavaScript或表单数据中引用元素。
<img
src="A Link to an image or any local image "
alt="an alternative test if the browser can't display the image"
width="104"
height="142" />
我们可以在此示例中看到一些元素的属性。这些属性为元素提供了其他信息。 标签有12个以上的属性。
在这里,我们使用了诸如 src 之类的属性,该属性与图像源/链接,Alt相对应,该属性提供了充满含义的文本描述,以增加可访问性以及高度和宽度,并描述图像。 s高度和宽度。
<!-- input form with all attributes -->
<form>
<label for="fname"> First name:</label><br />
<input type="text" id="fname" name="fname" value="John" /><br />
<label for="lname">Last name:</label><br />
<input type="text" id="lname" name="lname" value="Doe" /><br /><br />
<input type="submit" value="Submit" />
<select name="Mobile" id="Mobiles">
<option value="Samsung">Samsung</option>
<option value="Apple">Apple</option>
<option value="OnePlus">OnePlus</option>
<option value="Xiaomi">Xiaomi</option>
<option value="Oppo">Oppo</option>
<option value="Vivo">Vivo</option>
</select>
</form>
在上面的示例中可以看到几种HTML属性的使用,包括操作,该操作指定提交表单时要采取的操作,如果省略了操作属性,则将默认操作设置为当前页。
名称属性对应于用户定义的当前元素的名称,ID是唯一的用户定义的名称和值,用于各种输入类型,例如按钮的文本和<输入>元素的初始值。
其他属性包括样式,类和其他可与所有HTML元素一起使用的全局属性,以及某些特定于某些HTML元素的元素,例如HREF和DEFER。
我们不会详细介绍HTML属性,因为这超出了CSS SELECT上此博客的范围,但是对于访问性,通过属性提供有意义的描述和考虑最佳实践至关重要。
。。
通过此 usability testing 教程,您将学习可用性测试是一种发现意外错误的好方法,在以前找到不必要的或不用的方法再进一步,并从局外人发表了公正的意见。
下拉vs.选择与菜单与导航
新手开发人员中的一个常见误解是在讨论下拉阶段时提到的名字。其中最常见的是下拉,选择和菜单。
在CSS Select博客的这一部分中,让我们仔细观察它们是什么。
下拉
一个由一个按钮组成的交互元素,该按钮通常在鼠标悬停,单击或点击,揭示并隐藏项目列表。在交互开始之前,默认情况下列表是隐藏的。
下拉列表仅在不活动的情况下显示一个值。当用户与下拉列表进行交互时,将显示一个值列表供用户选择。
。
材料UI下拉列表
表单控件,显示一个表单上选择列表的用户选择单个项目或多个项目的表单。
要列出下拉列表,我们使用HTML
菜单
<菜单>标签定义了可以在网站上执行的命令或操作的列表/菜单。
目前,
-
搜索引擎和其他用户设备可以使用语义HTML标签来确定网页的重要性和上下文。下面给出了一些HTML语义标签:
-
:标签用于包含可能独立于网站其余部分分发的信息
-
<> <>:元素表示页面的一部分,其中包含与旁边元素周围的内容链接但与众不同的内容。
-
:标签表示独立信息,例如插图,图表,图片,代码列表等
-
-
<部分>:a <部分>是用于在网页上创建独立部分的语义元素。
结构设计
构建设计,使一切都以某种方式互连,以便用户有旅途的路线图。结构还需要在适当的地方放置标题,部分,Navbar,标题,页脚等。这些语义元素代表逻辑部分,并提供了一种更好的方法来构建网站。
具有可访问语义结构的网站,无论大小或复杂性如何,都可以提供可访问性。如果没有坚实的语义基础,您的网站的可访问性随着它的增长而降低。在开发的早期设置适当的结构有助于您的网站随着增长而保持可访问。
-
避免键盘陷阱
在网站上,当设计人员或开发人员采用违反基本键盘功能的方法时,就会出现键盘可访问性问题。当用户可以使用选项卡键在菜单项目中导航,但不能离开菜单时,就会发生问题。
以下是创建键盘访问网站的一些最佳实践:
-
可以使用键盘上的选项卡键访问所有链接和控件。
-
UI中的所有组件都应遵循W3C的Wai-Aria实践。
-
应避免捕获键盘的应用程序,插件,小部件和JavaScript技术。
-
增强浏览器的默认焦点指示器。
在离开菜单区域和菜单关闭的鼠标之间实现时间延迟。可以使用指针但缺乏精细电机控制的访客需要在足够的时间内可见下拉菜单。人们应该有一点时间与菜单互动。
如果链接为下拉链接,则必须将菜单编码为盲人用户使用的辅助技术链接的无序列表,以便它们可以计算每个下拉菜单中的链接数量或主要导航。他们还需要知道哪个链接将它们带到当前的页面。
这些是Web可访问性的一些最重要的最佳实践。如我们所见,要使下拉菜单可访问,我们需要考虑不同的残疾用户组的需求。
创建下拉菜单简单,简单且易于理解,为他们提供了更多时间来应对鼠标运动,使用适当的语法为屏幕读取器用户,并确保菜单与键盘兼容,最终将有助于更好的可访问性。<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< /p>
如何在多个浏览器上测试自定义菜单?
在为您的网站创建新菜单时,如何确保其功能正常并与所有浏览器一起使用?答案很简单:Test the website on different browsers和操作系统组合。
但是,在多个浏览器上测试您的网站自定义菜单的问题在于它可能很耗时。您必须测试操作系统和浏览器的每种组合,因此您必须通过数十个或数百种组合测试您的网站。这是浪费时间,尤其是当某些组合无关紧要或多余的时候。
在每个浏览器中自定义菜单的工作方式之间存在显着差异,并且您需要测试这些差异。但是,您可以使用cloud testing工具(例如lambdatest。
Cross browser testing平台(例如lambdatest)允许您执行web testing并提供3000多个浏览器和OS组合的online browser farm。
另外,您可以使用LT Browser之类的工具检查responsive websites。 LAMBDATEST的LT浏览器是mobile-friendly test工具,具有50多个预安装的视口,具有多种标准分辨率。
订阅Lambdatest YouTube频道,围绕硒测试,剧作家浏览器测试,Appium等进行教程。
结论
恭喜您到达了这么远!您是一个很棒的读者!
在有关使用CSS创建自定义选择菜单的详细博客中,我们涵盖了在HTML,CSS和JavaScript的帮助下创建相同的各种方法。我们不仅尝试创建下拉菜,而且还讨论了各种最佳实践和可访问性技巧和技巧。
现在,我们知道如何最有效,有效地创建您的自定义选择菜单。
快乐的样式!