每日思考(2020/01/13)

题目概览

  • 对无障碍web(WAI)的理解
  • 请描述css的权重计算规则
  • 写一个获取数组的最大值、最小值的方法

题目解答

对无障碍web(WAI)的理解

  • 含义:“Accessibility”,在 Web 发展的初期,习惯把它翻译成“无障碍”,因为它主要考虑如何让残障人士更容易地访问 Web 内容。诸如有行动障碍的人难以完成需要用鼠标进行的精确手部动作,他们更多的需要靠键盘;有视觉障碍的人(低视力、色盲、失明)需要使用屏幕放大镜(物理放大镜、网页的缩放功能、网页设置大字体)或屏幕阅读器来浏览网页内容;有听觉障碍的人需要靠阅读文本来替代音频和视频;有认知障碍的人需要网页本身尽可能地简单清晰、符合逻辑。如今,访问 Web 的场景、设备和人群越来越多样化,Accessibility 已不再局限于满足残疾人的需求,它也涵盖了在特定场景下的网站可用性,比如移动设备、弱网环境、忘带鼠标、触摸板坏掉了、老年人访问等等
  • HTML 语义化对 Web 的可访问性至关重要
    • 良好的页面结构和布局

      <article>
          <h2>静夜思</h2>
          <p>[唐] 李白</p>
          <div>
              床前明月光,疑是地上霜。<br/>
              举头望明月,低头思故乡。
          </div>
          <ul>
              <li><a href="#">译文</a></li>
              <li><a href="#">注释</a></li>
              <li><a href="#">作者介绍</a></li>
          </ul>
      </article>
    • 简写和缩写:之前,为了看起来清晰,我会不经意在文本里直接写符号 “+” “/” 来表示“和” “或”。这破坏了 Web 的可访问性,由于用了不清晰的语言。以上书写方式(“+” “/” “>”等)会让屏幕阅读器读出来的内容不利于人理解,应该直接用对应的汉字来表述。除此之外,“5-10年”应该写成“5到10年”;初次出现的缩写,应该在 HTML 里也写个全称,比如HTML,这会有助于屏幕阅读器提取其它辅助信息
      <abbr title="HyperText Markup Language">HTML</abbr>
    • form 表单:<label> 标签可以让提示文本和输入框完美的对应起来,还可以扩大激活输入框的范围,方便用户选择和输入
      <form>
          <div>
              <label for="name">姓名:</label>
              <input type="text" id="name" name="name">
          </div>
          <div>
              <label for="age">年龄:</label>
              <input type="text" id="age" name="age">
          </div>
          <div>
              <label for="gender">性别:</label>
              <select id="gender" name="gender">
                  <option>男</option>
                  <option>女</option>
              </select>
          </div>
      </form>
    • 键盘可访问性:键盘可访问包括按 tab 键能让页面中的元素获得焦点、按 Return/Enter 键能激活该元素、表单元素<select>在获得焦点时按方向键可以上下切换选项。自带键盘可访问性的标签有<a><button><label>以及表单元素。如果 HTML 标签选择得当、源码里标签的放置顺序本身就和页面中想导航元素的顺序一致,大多数情况下就可以避免手动设置 tabindex 属性了。
    • 文本的替代方案:alt 属性
      <img src="dinosaur.png"
           alt="红色霸王龙:一种双腿恐龙,像人一样直立,有小胳膊,头部有很多锋利的牙齿。"
           title="The Mozilla red dinosaur">
  • Web 内容可访问性指南
    • 可感知

      • 文本替代方案:为任何非文本内容提供文本替代方案
      • 基于时间的媒体:为基于时间的媒体提供替代方案
      • 适应性:创建可以以不同方式呈现的内容(例如更简单的布局),而不会丢失信息或结构
      • 可区分:让用户更容易看到和听到内容,包括将前景色与背景色分开
    • 可操作
      • 键盘可访问:通过键盘能访问到所有功能
      • 足够的时间:为用户提供足够的时间来阅读和使用
      • 适当地动画:不要以已知会导致癫痫发作的方式设计内容
      • 可导航:提供帮助用户导航、查找内容和确定其位置的方法
    • 可理解
      • 可读:使文本内容易读和易懂
      • 可预测:使网页以可预测的方式显示和运行
      • 输入帮助:帮助用户避免和纠正错误
      • 健壮健全:可以让各种用户代理(浏览器、辅助技术)可靠地解释
      • 最大限度地兼容当前和未来的用户代理,包括辅助技术

请描述css的权重计算规则

  • 权重值计算

    选择器 案例 权重值
    !important !important Infinity
    内联样式 style=".." 1000
    ID #id 100
    class .class 10
    属性 [type=‘text‘] 10
    伪类 :hover 10
    标签 p 1
    伪元素 ::first-line 1
    相邻选择器、子代选择器、通配符 * > + 0
  • 比较规则
    • 1000>100。也就是说从左往右逐个等级比较,前一等级相等才往后比。
    • 在权重相同的情况下,后面的样式会覆盖掉前面的样式。
    • 继承属性没有权重值
    • 通配符、子选择器、相邻选择器等的。虽然权值为0,但是也比继承的样式优先。
    • ie6以上才支持important,并且尽量少用它。

写一个获取数组的最大值、最小值的方

//方法一
Array.prototype.min = function () { //最小值
    var min = this[0];
    var len = this.length;
    for (var i = 1; i < len; i++) {
        if (this[i] < min) {
            min = this[i];
        }
    }
    return min;
}
Array.prototype.max = function () { //最大值
    var max = this[0];
    var len = this.length;
    for (var i = 1; i < len; i++) {
        if (this[i] > max) {
            max = this[i];
        }
    }
    return max;
}

//方法二
Array.prototype.max = function () {
    return Math.max.apply({}, this)
}
Array.prototype.min = function () {
    return Math.min.apply({}, this)
}

//方法三
function getMaximin(arr, maximin) {
    if (maximin == "max") {
        return Math.max.apply(Math, arr);
    } else if (maximin == "min") {
        return Math.min.apply(Math, arr);
    }
}

//方法四
var a = [1, 2, 3, 5];
alert(Math.max.apply(null, a)); //最大值
alert(Math.min.apply(null, a)); //最小值

//多维数组
var a = [1, 2, 3, [5, 6],[1, 4, 8]];
var ta = a.join(",").split(","); //转化为一维数组
alert(Math.max.apply(null, ta)); //最大值
alert(Math.min.apply(null, ta)); //最小值

原文地址:https://www.cnblogs.com/EricZLin/p/12190061.html

时间: 2024-11-03 00:25:01

每日思考(2020/01/13)的相关文章

[記事]2020/01 計畫

咕咕,產出文章真的好難 在此提醒 現在時間: 2020/01/11 12:50 2020 的第 1 個月已經過去快要一半啦 2020/01 月規劃 & 展望 邊做邊補充,希望 2 月來看可以打很多勾 3 FOCUS [ ] 最後一周的複習,堅持下去 [ ] 提高組 3 sessions [ ] 專注把其他小小.生活.細節處做好 Todo General [ ] 2019 檢討與檢視與整理 [ ] 2020 New Year resolutions Algos [ ] 線段樹入門 [ ] BIT

Wed Nov 01 13:03:16 CST 2017 WARN: Establishing SSL connection without server&#39;s identity verification is not recommended.

报错:Wed Nov 01 13:03:16 CST 2017 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option

2020/01/10日报

日报内容详情: 日期:2020/01/10 前言: 今天洗漱完,本来是准备走路去上课的,但是走到外面一看,天气阴霾,下起了小雨,让人感觉是很不舒适,计划也赶不上变化啊,只好做公交去上课了.好了,不多说废话,开始今天的学习记录. 学习记录 上午: 开始的时候就下载了两个漏洞扫描软件,NESSUS和Acunetix,这两个软件都是开源的,Nessus使用的是vm镜像版的,这个软件安装时真的慢,感觉电脑都有点卡了,当然这应该是我电脑太破了,已经在暗示我换一台了. 终于安装好了,要开始使用操作了,因为我

人工智能行业每日必读(01&#183;16)

北京地铁正研究「刷脸」安检方案 1 月 16 日消息,北京市人大代表.北京市地铁运营有限公司党委书记.董事长谢正光透露,正在探索基于乘客信用的智慧安检模式,加强乘客信用体系建设,建立地铁『白名单』及快速安检通道制度.」据悉,目前,「刷脸」的快捷安检方案正在研究中,将在客流量较大的车站先行试点. 来源:http://www.egsea.com/news/detail?id=553902 云测数据荣登2019「ToB行业影响力·产品价值榜」 1月14日,2019 ToB行业影响力价值榜单重磅揭晓.云

每日思考(2020/01/04)

题目概览 对<meta>标签的理解 rgba()和opacity这两个的透明效果有什么区别? 为浏览器元素添加一个随机颜色的边框 在浏览器中输入url到页面显示出来的过程发生了什么 题目解答 对<meta>标签的理解 定义:元素可提供相关页面的元信息(meta-information),比如针对搜索引擎和更新频度的描述和关键词等等.标签位于文档的头部<head></head>标签内,不包含任何内容. 标签的属性定义了与文档相关联的[名称/值对]. HTML

每日思考(2020/01/02)

题目概览 对GBK和UTF-8的理解 对z-index的理解 bind.call.apply的区别? 题目解答 对GBK和UTF-8的理解 含义 GBK编码:是指中国的中文字符,其它它包含了简体中文与繁体中文字符,另外还有一种字符"gb2312",这种字符仅能存储简体中文字符 UTF-8编码:它是一种全国家通过的一种编码,如果你的网站涉及到多个国家的语言,那么建议你选择UTF-8编码 区别 UTF8编码格式很强大,支持所有国家的语言,正是因为它的强大,才会导致它占用的空间大小要比GBK

每日思考(2020/01/03)

题目概览 对影子(Shadow)DOM的了解 怎样修改自动填充表单的黄色背景? 对arguments的理解 题目解答 对影子(Shadow)DOM的了解 概念:是浏览器的一种能力,它允许在浏览器渲染文档(document)的时候向其中的 Dom 结构中插入一棵 DOM 元素子树,但是特殊的是,这棵子树(shadow-dom)并不在主 DOM 树中.可以想象成我们在 Vue 或者 React 中使用的一个个组件,是一种将 HTML 结构.Style 封装起来的结构. <!--> 浏览器开发者设置

每日思考(2020/01/14)

题目概览 网页上的验证码是为了解决什么问题? 对图片格式的了解及使用场景 写一个方法判断字符串是否为回文字符串 题目解答 网页上的验证码是为了解决什么问题? 目的 防止机器行为,确定是人为操作,比如登陆.发帖等 保护服务器,比如12306买票的时候,各种抢购的时候 类型 图形验证码 字符验证码 文字+混淆 如早期的7456这种结果的验证码 复杂字符验证码 复杂文字+混淆 如加入中文等本土化的增加识别难度 计算验证码 数字+运算符+混淆 如1+2=? 需要识别表达式增加识别难度 精确识别 文字+混

每日思考(2020/01/15)

题目概览 DOM和BOM有什么区别? 让网页的字体变得清晰,变细用CSS怎么做? 写一个方法把0和1互转(0置1,1置0) 题目解答 DOM和BOM有什么区别? DOM 是 Document Object Model 的缩写.即文档对象模型,遵循 W3C 制定的标准.提供了独立于内容而与浏览器窗口进行交互的对象.描述了与浏览器进行交互的方法和接口,可以对浏览器窗口进行访问和操作,譬如可以弹出新的窗口,改变状态栏中的文本.其本质就是 DOM 元素.最早使用的 document.getElement