首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

CSS 下拉菜单与 focus

导航栏之所以不直接显示而是放进下拉菜单,也是为了移动端等小尺寸设备显示得优雅一点,因此这个单击判定其实是优势。...相较于 hover 悬停、focus 获得焦点,active 「正在交互」——从按下鼠标左键(主要按键)到松开、或者从触摸到松开,一松开便解除 active 状态,而下拉菜单显然要按下后保持住展开状态...上面 tabindex 决定元素是否可以被聚焦,其实 tabindex 还可以决定元素能如何被聚焦以及被聚焦顺序,而这些就在赋给 tabindex 值控制范畴。...其次,当一个元素被聚焦时,点击一般空白处无法使它失焦。这个问题很迷, iOS Safari 上 100% 复现而在 iOS Chrome 上完全无法复现。...上面表述「一般」表示这其实是有例外,比如点击其他默认可聚焦元素(如 、button 等等)就会使新聚焦元素顶替原聚焦元素让先前元素失焦。

5.4K20

CSS魔法堂:稍稍深入伪类选择器

前言  过去零零星星地了解和使用:link、::after和content等伪类、伪元素选择器,最近看书时发现这方面有所欠缺,于是决定稍微深入学习一下,以下为伪类部分整理。...伪类  伪类选择器实质上让设计师可以根据元素特定状态,设置不同视觉效果。...:active,用于设置鼠标按键按下,但未释放时,链接样式。  ...假设现在页面存在Target元素,那么只要地址栏输入#title浏览器就会不断滚动(滚动不一定存在补间动效)直到元素h3#title位于可视区特定位置。...而HTML5增加当元素设置了contenteditable或tabindex属性时,该元素支持focus状态。 也就是符合以下选择器元素均支持focus状态。

1K20

腾讯网新闻底层页无障碍代码细节

使这段代码做为body第一个元素使用css样式代码控制此代码内容视觉上不现实,只有使用屏幕阅读器才可以听到这个链接。...使得用户可以按alt+2切换到导航位置,并且朗读title内容,另外由于一般导航都在div这种无法自动添加焦点标签上,所以使用tabindex=”-1”或者tabindex=”0”,使得这种标签可以在按下相应快捷键时候获得焦点...这里设置为-1是因为如果值为0的话,ie 下相应区域会有虚线(如图一);标准浏览器下,比如chrome、firefox、safari等,一个非焦点元素获得焦点时候会激活outline属性从而产生一个实体线框...使得用户在按alt+4时候直接切换至评论输入区,并且阅读title值。 6. 大部分浏览器下当鼠标某个拥有title属性区域时候,会出现悬停小菜单提示,有些影响现有的用户体验。...当鼠标某个拥有title属性区域时候,会出现悬停小菜单提示 解决方式,默认此区域title值为空,利用javascript脚本实现:当按下某快捷键时候,对快捷键绑定区域进行动态赋予title

86510

《HTML重构》读书笔记&思维导图

在线分析你网站 安装浏览器插件( Chrome、 Firefox) 通过 Insights API应用嵌入PageSpeed功能 3.其他优秀工具   蜘蛛模拟器:这个工具可以分析你页面,并提供一些优化建议...可以把脚本移出到一个没必要转义外部文件或者把脚本放进注释。 7.只有唯一元素 8.转义属性值引号   属性值把 ” 转义为" ,把 ’ 转义为' 。...xml:lang属性(因为xml:lang属性XML确定语言信息标准用法). // 如果网页使用HTML格式,那么应该同时使用xml:lang和lang属性.   ...布局 使用Css+Div替换表格布局   创建现代网页需要使用与CSS相分离XHTML不要再使用表格型布局与font标签等表现性元素(//老生常谈) 使用Css定位替代框架 正确标记列表 替换占位图片...使用ETag   ETag:EtagURLEntity Tag,用于标示URL对象是否改变,区分不同语言和Session等等。具体内部含义使服务器控制,就像Cookie那样。

1.5K40

JavaScript 编程精解 中文第三版 十五、处理事件

事件处理器 想象一下,有一个接口,若想知道键盘上是否有一个键是否被按下,唯一方法读取那个按键的当前状态。为了能够响应按键动作,你需要不断读取键盘状态,以在按键被释放之前捕捉到按下状态。...这种方法执行时间密集计算时非常危险,因为你可能错过按键事件。 一些原始机器可以像那样处理输入。有一种更进一步方法,硬件或操作系统发现按键时间并将其放入队列。...因此,要注销一个处理其,您需要为该函数提供一个名称(本例为once),以便能够将相同函数值传递给这两个方法。...触摸事件 我们使用图形浏览器风格,考虑到鼠标界面的情况下而设计,那个时候触摸屏非常罕见。 为了使网络早期触摸屏手机上“工作”,某种程度上,这些设备浏览器假装触摸事件鼠标事件。...其效果让我们进度条呆在最顶上。 改变其宽度来指示当前进度。 设置宽度时,我们使用%而不是px作为单位,使元素大小相对于页面宽度。

5.5K20

前端基础(HTML,CSS,JavaScript)知识笔记,附:前端基础面试题!!

html标签具有语义化,可通过标签名能够判断出该标签内容,语义化作用是网页 结构层次更清晰,更容易被搜索引擎收录,更容易让屏幕阅读器读出网页内容。 标签内容一对标签内部内容。...标签属性 class属性:用于定义元素类名 id属性:用于指定元素唯一 id,该属性整个html文档具有唯一性 style属性:用于指定元素行内样式,使用该属性后将会覆盖任何全局样式设定...title属性:用于指定元素额外信息 accesskey属性:用于指定激活元素快捷键 tabindex属性:用于指定元素 tab 键下次序 dir属性:用于指定元素内容文本方向,属性只有...onchange,元素值被改变时触发 onfocus,当元素获得焦点时触发 onreset,当表单重置按钮被点击时触发 onselect,元素中文本被选中后触发 onsubmit,...提交表单时触发 keyboard 键盘事件: onkeydown,在用户按下按键时触发 onkeypress,在用户按下按键后,按着按键时触发。

2.3K20

HTML5语法,标签,属性

标签内容之外,与article标签内容相关辅助信息 hgroup:对整个页面或者页面一个区块标题进行组合使用 nav:表示页面导航链接部分 figure:表示一段独立内容,一般表示一个独立单元...这些元素纯粹为画面展示服务,HTML5提倡把画面展示性功能放在css中统一编辑。 2、不再使用frame框架。 frameset、frame、noframes。...3、只有部分浏览器支持元素 applet、bgsound、blink、marquee等标签。 4、其他被废除元素 废除rb,使用ruby替代。 废除acronym使用abbr替代。...兼容性查询网站:http://caniuse.com/ web语义化定义 HTML结构恰当位置上使用语义恰当标签,使页面具有良好结构,页面标签元素具有含义,能让搜索引擎更容易理解。...即使没有css样式情况下,网页内容也应该是有序文档格式显示,并且容易阅读使项目维护人员更容易对网站进行分块,便于阅读理解。 不具有语义标签元素最好不要在里面放文字。

2.3K20

textarea中文输入判断与搜狗输入特殊行为

0.2 监控文字输入方法 使用Canvas实现文字编辑器细节这里就不讲了,原理大致都相同。...0.2.1 键盘事件 监听keydown 和 keyup事件最直接方法,通过keyCode我们可以获取按键值。...事件触发之后被触发,这是input类型元素使用标准事件,表示有文字输入。...0.3.2 value 从0.3.1图中我们可以看到拼音输入输入过程,value值变化,完成输入之前这个值输入法控制,完成之后,value值会变为输入文字内容。...我们代码对keydown,keyup,input,compositionstart和compositionend同时做事件监听,然后使用这个版本搜狗输入法做输入。结果如下: ? ?

2.5K110

做了七年前端开发,我最近才意识到可访问性必要......

我们一些人仍然使用带 class div 作为这些特定布局元素。为什么?因为我们不知道。...以下我们开发任何前端时需要注意事项: HTML 语义 —— 正确使用 HTML 分区元素 标题 —— 用于显示文档结构,而非用于大字体设计 键盘导航使用tabindex”和 ARIA ——...这里也有一些注意事项: 不设置按钮样式以及设置按钮样式理想方法 针对于没有任何文本、只有图片按钮,可遵循以下三个步骤任何一个: 使用隐藏来指明按钮标签 使用...设置焦点指示器样式时,我们需要考虑以下几点: 对比区 与相邻颜色对比 不要遮盖焦点元素 在下面的示例,黑色显示了焦点指示器启用状态 (使用键盘 tab 时样式): 设置焦点指示器样式不同方法...是否用 tabindex=-1 删除了不需要链接? 所有按钮是否都可以访问? 他们有合适名称或标签吗? 如果没有,你是否提供了 ARIA 标签或替代方法? 你改变焦点指示器样式了吗?

1.7K30

控制WinFormTab键跳转

一,需求 Winform,默认情况下,按下Tab键,光标会按照我们设定TabIndex值从小到大进行跳转。...但如果用户要求按下Tab键跳转到特定控件,这种要求还是很合理,比如用户只想输入几个必须填项目。 我们可以配置文件配置这些必须填写项目,并设定他们跳转顺序。这样程序也更加灵活,利于扩展。...二,探索实现方法 1,每个输入控件keyDown事件里判断Tab键,做相应跳转处理。 最后调查发现按下Tab键,并不会触发控件keyDown事件,Tab键默认被系统处理了,悲剧了。...另外,输入项目太多时候,这个做法工作量也太大了,不可行。 2,找一个全局点控制,而不分散到每个控件来处理。 方法就是利用Form本身ProcessCmdKey方法。...parent.Parent; tabCtrl.SelectedTab = (parent as TabPage); } } 上面的tabMap,实际应用应该从配置文件读取

1.6K40
领券