优雅降级

撩课-Web大前端每天5道面试题-Day7

六眼飞鱼酱① 提交于 2020-02-01 02:47:03
1. 你能描述一下渐进增强和优雅降级之间的不同吗? 定义: 优雅降级(graceful degradation): 一开始就构建站点的完整功能, 然后针对浏览器测试和修复 渐进增强(progressive enhancement): 一开始只构建站点的最少特性, 然后不断针对各浏览器追加功能。 优雅降级和渐进增强都关注于同一网站 在不同设备里不同浏览器下的表现程度。 区别: “优雅降级”观点认为应该针对那些最高级、 最完善的浏览器来设计网站。 而将那些被认为“过时”或有功能缺失的浏览器下 的测试工作安排在开发周期的最后阶段,并把测试 对象限定为主流浏览器(如 IE、Mozilla 等)的 前一个版本。 “渐进增强”观点则认为应关注于内容本身。 总结: "优雅降级"就是首先完整地实现整个网站, 包括其中的功能和效果. 然后再为那些无 法支持所有功能的浏览器增加候选方案, 使之在旧式浏览器上以某种形式降级体验 却不至于完全失效。 "渐进增强"则是从浏览器支持的基本功能开始, 首先为所有设备准备好清晰且语义化的html及 完整内容, 然后再以无侵入的方法向页面增加无 害于基础浏览器的额外样式和功能。 当浏览器升级时, 它们会自动呈现并发挥作用。 2. 请说说浏览器内核的组成? 浏览器的结构: 用户界面(UI) - 包括菜单栏、工具栏、地址栏、 后退/前进按钮、书签目录等,也就是能看到的除

前端知识点乱炖之一(HTML/CSS)

扶醉桌前 提交于 2019-12-07 18:46:47
前面面试知识总结之HTML/css篇 1.行内元素、块级元素和空(void)元素有哪些? 行内元素:a 、b、span、img、input、strong、select、label、em、button、textarea。 块级元素:div、ul、li、dl、dt、dd、p、h1-h6、blockquote。 空元素(没有内容的HTML元素): br、meta、hr、link、input、img。 2. css实现垂直水平居中的方法? 方法一:使用绝对定位+margin使其垂直水平居中; <html> <head> <meta charset="utf-8"> <title>垂直水平居中</title> <link rel="stylesheet" href="index.css"> </head> <body> <div> <div></div> </div> </body> </html> .container{ position:relative; height: 100vh; } .content{ position: absolute; width:200px; height:200px; background-color:#26A9DF; top: 50%; left: 50%; margin-top:-100px ; margin-left: -100px; } 方法二

Web前端基础知识总结

感情迁移 提交于 2019-11-28 13:14:04
一、HTML和CSS 你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么 ? IE: trident 内核 Firefox:gecko内核 Safari:webkit内核 Opera:以前是presto内核,Opera现已改用Google Chrome的Blink内核 Chrome:Blink(基于webkit, Google与Opera Software共同开发 ) 每个 HTML文件里开头都有个很重要的东西,Doctype,知道这是干什么的吗? <!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前。此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范。(重点:告诉浏览器按照何种规范解析页面) Quirks 模式是什么?它和Standards模式有什么区别 从IE6开始,引入了Standards模式,标准模式中,浏览器尝试给符合标准的文档在规范上的正确处理达到在指定浏览器中的程度。 在IE6之前CSS还不够成熟,所以IE5等之前的浏览器对CSS的支持很差, IE6将对CSS提供更好的支持,然而这时的问题就来了,因为有很多页面是基于旧的布局方式写的,而如果IE6 支持CSS则将令这些页面显示不正常,如何在即保证不破坏现有页面,又提供新的渲染机制呢? 在写程序时我们也会经常遇到这样的问题,如何保证原来的接口不变,又提供更强大的功能

js数组去重

那年仲夏 提交于 2019-11-27 02:08:56
一、前端编程 1. 你能描述一下渐进增强和优雅降级之间的不同吗? 答: 定义: 优雅降级(graceful degradation): 一开始就构建站点的完整功能,然后针对浏览器测试和修复 渐进增强(progressive enhancement): 一开始只构建站点的最少特性,然后不断针对各浏览器追加功能。 都关注于同一网站在不同设备里不同浏览器下的表现程度 区别: “优雅降级”观点认为应该针对那些最高级、最完善的浏览器来设计网站. 而将那些被认为“过时”或有功能缺失的浏览器下的测试工作安排在开发周期的最后阶段,并把测试对象限定为主流浏览器(如 IE、Mozilla 等)的前一个版本。 “渐进增强”观点则认为应关注于内容本身。请注意其中的差别: 我甚至连“浏览器”三个字都没提 。 理解: "优雅降级"就是首先完整地实现整个网站,包括其中的功能和效果. 然后再为那些无法支持所有功能的浏览器增加候选方案, 使之在旧式浏览器上以某种形式降级体验却不至于完全失效. "渐进增强"则是从浏览器支持的基本功能开始, 首先为所有设备准备好清晰且语义化的html及完整内容, 然后再以无侵入的方法向页面增加无害于基础浏览器的额外样式和功能. 当浏览器升级时, 它们会自动呈现并发挥作用.   参考自: 渐进增强、优雅降级 渐进增强和优雅降级 2. 浏览器兼容问题: 问题1