HTML 相关
你是如何理解 HTML 语义化的?
语义化:指对文本内容的结构化(内容语义化),选择合乎语义的标签(代码语义化)。
举例:段落用 p,边栏用 aside,主要内容用 main 标签。
好处:
便于开发者阅读和维护
有利于SEO:让浏览器的爬虫和辅助技术更好的解析,
语义化标签介绍:
在HTML5出来之前,我们习惯于用div来表示页面的章节或者不同模块,但是div本身是没有语义的。但是现在,HTML5中加入了一些语义化标签,来更清晰的表达文档结构。
20180322_1120.jpg
参考链接:
meta viewport 是做什么用的,怎么写?
1 | <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> |
控制页面在移动端不要缩小显示。
canvas 元素是干什么的?
看 MDN 的 canvas 入门手册。
说一下CSS盒模型
可以参考本人的另外一篇文章:CSS盒模型及BFC
css reset 和 Normalize.css 有什么区别
此题考英文。
二者都是用来统一浏览器的默认样式:
reset:重置。相对「暴力」,不管你有没有用,统统重置成一样的效果,且影响的范围很大,讲求跨浏览器的一致性。(一刀切)
Normalize.css:标准化。相对「平和」,注重通用的方案,重置掉该重置的样式,保留有用的 user agent 样式,同时进行一些 bug 的修复,这点是 reset 所缺乏的。(去伪存真)
参考链接:
如何居中(必考)
水平居中
1、行内元素:(文字、图片等水平居中)
给父亲设置:
1 | text-align: center; |
另外,让文字的行高 等于 盒子的高度,可以让单行文本垂直居中。
2、块级元素:(让标准流中的盒子水平居中)
给元素设置:(让当前元素在父亲里剧中)
1 | //方式一 |
上面的代码, margin: auto相当于margin: auto auto auto auto。margin: 0 auto相当于margin: 0 auto 0 auto,四个值分别对应上右下左。
垂直方向:根据规范,margin-top: auto 和 margin-bottom: auto,其计算值为0。
水平方向:水平方向的 auto,其计算值取决于可用空间(剩余空间)。
参考链接:https://www.zhihu.com/question/21644198/answer/22392394