目录

  1. 你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么?
  2. Quirks模式是什么?它和Standards模式有什么区别
  3. Doctype作用? 严格模式与混杂模式-如何触发这两种模式,区分它们有何意义?
  4. div+css的布局较table布局有什么优点?
  5. img的alt与title有何异同? strong与em的异同?
  6. 你能描述一下渐进增强和优雅降级之间的不同吗?
  7. 为什么利用多个域名来存储网站资源会更有效?
  8. 请谈一下你对网页标准和标准制定机构重要性的理解。
  9. 请描述一下cookies,sessionStorage和localStorage的区别?
  10. 简述一下src与href的区别。
  11. 知道的网页制作会用到的图片格式有哪些?
  12. 知道什么是微格式吗?谈谈理解。在前端构建中应该考虑微格式吗?
  13. 在css/js代码上线之后开发人员经常会优化性能,从用户刷新网页开始,一次js请求一般情况下有哪些地方会有缓存处理?
  14. 一个页面上有大量的图片(大型电商网站),加载很慢,你有哪些方法优化这些图片的加载,给用户更好的体验。
  15. 你如何理解HTML结构的语义化?
  16. 谈谈以前端角度出发做好SEO需要考虑什么?
  17. 有哪项方式可以对一个DOM设置它的CSS样式?
  18. CSS都有哪些选择器?
  19. CSS中可以通过哪些属性定义,使得一个DOM元素不显示在浏览器可视范围内?
  20. 超链接访问过后hover样式就不出现的问题是什么?如何解决?
  21. 下一篇:前端HTML+CSS初级面试题汇总二

1. 你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么?

浏览器 内核
IE trident内核
Firefox(火狐) gecko内核
Safari webkit内核
Opera 以前是presto内核,现已改用Google Chrome的Blink内核
Chrome Blink内核 (基于webkit, Google与Opera Software共同开发)

2.Quirks模式是什么?它和Standards模式有什么区别?

Quirks模式(怪癖模式,诡异模式,怪异模式)

Quirks模式和Standards模式的区别:
首先,严格模式(又称标准模式,Standards模式)和混杂模式(Quirk模式)都是指浏览器的呈现模式,要与Doctype的两种风格区别开来(严格( strict )和过渡( transitional ),过渡 DOCTYPE 的目的是帮助开发人员从老版本迁移到新版本)。

严格模式下:页面排版及JS解析是以该浏览器支持的最高标准来执行
混杂模式:不严格按照标准执行,主要用来兼容旧的浏览器,向后兼容

而浏览器究竟是使用严格模式还是混杂模式呈现页面与网页中的 DTD (文件类型定义)直接相关。

注意: DTD(文档类型定义)
作用是定义 XML 文档的合法构建模块。它使用一系列的合法元素来定义文档结构。列如:<!DOCTYPE 根元素 [元素声明]>

两种模式的一些差别案列如下:

  • 盒模型:W3C标准中,如果设置一个元素的宽度和高度,指的是元素内容的宽度和高度,而在Quirks 模式下,设置的宽度和高度还包含了paddingborder

  • 设置行内元素的高宽:Standards模式下,给<span>等行内元素设置wdithheight都不会生效,而在quirks模式下,则会生效。

  • 设置百分比的高度:standards模式下,一个元素的高度是由其包含的内容来决定的,如果父元素没有设置百分比的高度,子元素设置一个百分比的高度是无效的。

  • margin:0 auto设置水平居中: 使用margin:0 autostandards模式下可以使元素水平居中,但在quirks模式下却会失效。

诸如此类的,还有很多。有根据经验遇到的,也有文章上看到的,大家自行摸索吧。。。

3. Doctype作用? 严格模式与混杂模式-如何触发这两种模式,区分它们有何意义?

  • <!DOCTYPE>声明位于文档中的最前面的位置,处于 <html>标签之前。告知浏览器的解析器,用什么文档类型 规范( HTMLXHTML)来解析这个文档。

    对于 HTML 4.01 文档,
    包含严格 DTD 的 DOCTYPE 常常导致页面以标准模式呈现。
    包含过度 DTD 和 URI 的 DOCTYPE 也导致页面以标准模式呈现。
    但是有过度 DTD 而没有 URI 会导致页面以混杂模式呈现。
    DOCTYPE 不存在或形式不正确会导致 HTML 和 XHTML 文档以混杂模式呈现。

    对于HTML5文档,
    HTML5 没有 DTD ,因此也就没有严格模式与混杂模式的区别,HTML5 有相对宽松的语法,实现时,已经尽可能大的实现了向后兼容。( HTML5 没有严格和混杂之分)

4.div+css的布局较table布局有什么优点?

  • 改版的时候更方便,只要改CSS文件
  • 页面加载速度更快,结构化清晰,页面显示简洁
  • 表现与结构分离
  • 易于优化(SEO)对搜索引擎更加友好,排名更容易靠前

5.img的alt与title有何异同? strong与em的异同?

alt属性: 在图片无法加载时,才会显示的值
title属性: 在图片正常加载时,鼠标划上去显示的值

注意: alt也有后者的功能,但是只是在低版本的ie浏览器才支持,高版本及标准浏览器不支持这个 功能了。

strong: 粗体强调标签,强调,表示内容的重要性
em: 斜体强调标签,更强烈强调,表示内容的强调点

6.你能描述一下渐进增强和优雅降级之间的不同吗?

渐进增强 progressive enhancement:针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互等改进和追加功能达到更好的用户体验。

优雅降级 graceful degradation: 一开始就构建完整的功能,然后再针对低版本浏览器进行兼容。

区别: 优雅降级是从复杂的现状开始,并试图减少用户体验的供给,而渐进增强则是从一个非常基础的,能够起作用的版本开始,并不断扩充,以适应未来环境的需要。降级(功能衰减)意味着往回看;而渐进增强则意味着朝前看,同时保证其根基处于安全地带。

“优雅降级”观点
认为应该针对那些最高级、最完善的浏览器来设计网站。而将那些被认为“过时”或有功能缺失的浏览器下的测试工作安排在开发周期的最后阶段,并把测试对象限定为主流浏览器(如 IE、Mozilla 等)的前一个版本。
在这种设计范例下,旧版的浏览器被认为仅能提供“简陋却无妨 (poor, but passable)” 的浏览体验。你可以做一些小的调整来适应某个特定的浏览器。但由于它们并非我们所关注的焦点,因此除了修复较大的错误之外,其它的差异将被直接忽略。

“渐进增强”观点
认为应关注于内容本身。
内容是我们建立网站的诱因。有的网站展示它,有的则收集它,有的寻求,有的操作,还有的网站甚至会包含以上的种种,但相同点是它们全都涉及到内容。这使得“渐进增强”成为一种更为合理的设计范例。这也是它立即被 Yahoo! 所采纳并用以构建其“分级式浏览器支持 (Graded Browser Support)”策略的原因所在。

7.为什么利用多个域名来存储网站资源会更有效?

  • CDN缓存更加方便
  • 突破浏览器并发限制
  • 节约cookie带宽
  • 节约主域名的连接数,优化页面响应速度
  • 防止不必要的安全问题

8.请谈一下你对网页标准和标准制定机构重要性的理解。

网页标准和标准制定机构都是为了能让web发展的更‘健康’,开发者遵循统一的标准,降低开发难度,开发成本,SEO也会更好做,也不会因为滥用代码导致各种BUG、安全问题,最终提高网站易用性。

9.请描述一下cookies,sessionStorage和localStorage的区别?

特性 Cookie LocalStorage sessionStorage
数据的生命周期 一般由服务器生成,可设置失效时间。如果在浏览器生成,默认是关闭浏览器之后失效 除非被清除,否则永久保存 仅在当前会话有效,关闭页面或浏览器后被清除
存放数据大小 4KB 一般5MB 一般5MB
与服务端通信 每次都会携带在HTTP头中,如果使用cookie保存过多数据会带来性能问题 仅在客户端中保存,不参与和服务器的通信。 LocalStorage
用途 一般由服务器端生成,用于标识用户身份 用于浏览器缓存数据 LocalStorage
共享 在同源且符合path规则的文档之间共享 在同源文档之间共享 不能共享
相同点 三者都可以被用来在浏览器端存储数据,而且都是字符串类型的键值对 同上 同上

更多详情,请点击我的这篇博客查看:٩(๑❛ᴗ❛๑)۶
cookie localStorage sessionStorage (¦3」∠) 看完你居然就懂了!!!

10.简述一下src与href的区别

src: 用于替换当前元素
href: 用于在当前文档和引用资源之间确立联系。

src(source)指向外部资源的位置,指向的内容将会嵌入到文档中当前标签所在位置;
在请求src资源时会将其指向的资源下载并应用到文档内,例如js脚本,img图片和frame等元素。
<script src ="js.js"></script>
当浏览器解析到该元素时,会暂停其他资源的下载和处理,直到将该资源加载、编译、执行完毕,图片和框架等元素也如此,类似于将所指向资源嵌入当前标签内。这也是为什么将js脚本放在底部而不是头部。

href(Hypertext Reference)指向网络资源所在位置,建立和当前元素(锚点)或当前文档(链接)之间的链接,如果我们在文档中添加
<link href="common.css" rel="stylesheet"/>
那么浏览器会识别该文档为css文件,就会并行下载资源并且不会停止对当前文档的处理。这也是为什么建议使用link方式来加载css,而不是使用@import方式。

11. 知道的网页制作会用到的图片格式有哪些?

png-8png-24jpeggifsvg
但是上面的那些都不是面试官想要的最后答案。面试官希望听到是Webp。(是否有关注新技术,新鲜事物)

科普一下Webp: WebP格式,谷歌(google)开发的一种旨在加快图片加载速度的图片格式。图片压缩体积大约只有JPEG的2/3,并能节省大量的服务器带宽资源和数据空间。Facebook Ebay等知名网站已经开始测试并使用WebP格式。
在质量相同的情况下,WebP格式图像的体积要比JPEG格式图像小40%

想了解各种格式之间的区别

前端HTML+CSS面试题汇总一相关推荐

  1. 百度糯米android面试题,前端面试—CSS面试题汇总

    前端面试-CSS面试题汇总 博客说明文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 1.flex常见面试题 Flex 是 Flexible ...

  2. 【2022前端面试】CSS面试题汇总(加紧收藏)

    [2022前端面试]CSS面试题汇总(加紧收藏) 更新时间:2022年3月2日. 本文致力于建设前端面试题库,欢迎兄弟们投稿哈! 大纲 CSS整体的在上次的篇幅上有了较大的变化,画一个思维导图及时更新 ...

  3. Web前端开发——BAT面试题汇总及答案01

    目录: 目录: HTML&CSS篇: 1.你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? 2.每个 HTML 文件里开头都有个很重要的东西,Doctype,知道这是干什么的吗? 3 ...

  4. 前端关于html的面试题,关于java:前端面试HTML面试题汇总

    前端面试-HTML面试题汇总 博客阐明 文章所波及的材料来自互联网整顿和集体总结,意在于集体学习和教训汇总,如有什么中央侵权,请分割自己删除,谢谢! 1.语义化 为什么要语义化? a. 为了在没有CS ...

  5. CSS面试题汇总(二)

    往期点这里→CSS面试题汇总(一) 11. css 中可以让文字在垂直和水平方向上重叠的两个属性是什么? 参考答案: 垂直方向:line-height 水平方向:letter-spacing 那么问题 ...

  6. javascript前端开发最全面试题汇总

    JavaScript 面试题汇总 1. 根据下面 ES6 构造函数的书写方式,要求写出 ES5 的 class Example { constructor(name) { this.name = na ...

  7. 滴滴前端一面必会面试题汇总

    实现 LazyMan 题目描述: 实现一个LazyMan,可以按照以下方式调用: LazyMan("Hank")输出: Hi! This is Hank!LazyMan(" ...

  8. Web前端开发——BAT面试题汇总及答案02

    Table of Contents 目录: 二.HTML&CSS篇: 21.css 中可以让文字在垂直和水平方向上重叠的两个属性是什么? 22.px 和 em 的区别. 23.描述一个&quo ...

  9. 腾讯前端常考面试题汇总

    手写 bind.apply.call // callFunction.prototype.call = function (context, ...args) {context = context | ...

最新文章

  1. 【机器学习入门到精通系列】SVM与核函数(附程序模拟!)
  2. Drupal的高速缓存配置APC
  3. Sun x4500作为文件服务器的调优
  4. python基础之玩转(变量赋值)
  5. 阅文集团、微软小冰赋生了100部网文主角,可养成...
  6. mysql密码自动被改_每日一shell(十一)mysql强制自动修改密码
  7. MyBatis框架(6)动态sql
  8. 分布式服务框架之Dubbo简介
  9. 关于matlab中 CC = bwconncomp(A,4)命令的问题
  10. activity直接销毁_Android 关于Activity的销毁和重建
  11. 什么是DNS智能云解析,什么是NS,更换NS多久生效?
  12. html 播放ogg,HTML5中video 和 ogg
  13. rpm -ivh *rpm 是什么意思
  14. Arcgis(二) 绘制区域划分示意图——以重庆五大功能区为例
  15. 17届华为杯数学建模大赛B题代码
  16. 使用RT-Thread Studio DIY 迷你桌面时钟(一)| 基于STM32芯片创建HelloWorld工程
  17. discuz论坛添加、更换返回顶部图标
  18. 双目立体图像矫正方法简述
  19. 【C语言】计算Cmn
  20. idea字体变成繁体

热门文章

  1. java 围棋代码_java围棋源代码
  2. 基于WebAssembly的前端视频编辑器设计与实现(个人毕设论文删改)
  3. 用python输出1~50带圈的序号(①~㊿)
  4. [原创]推荐学习STL的好书(入门级别)
  5. 论文的总体结构及质量控制
  6. java session时间_java session时长问题,java设置session超时时间实例
  7. 遥感目标检测数据集汇总
  8. AMCL算法原理讲解
  9. 在 Linux 上烧录 CD
  10. 【ISAR成像定标方法(1)—转台目标的RD成像算法MATLAB仿真】