好程序员web前端学习路线分享前端基础面试题,希望对大家有所帮助。

1HTML语义化的理解?

  答案:HTML语义化就是让页面的内容结构化,便于对浏览器、搜索引擎解析;在没有样式CSS的情况下也以一种文档格式显示,并且是容易阅读的;搜索引擎的爬虫依赖于标记来确定上下文和各个关键字的权重,利于SEO;使阅读源代码的人对网站更容易将网站分块,便于阅读维护理解。

2父元素透明,但是又不影响子元素的透明度怎么实现?

  答案:方法一:用rgba

 方法二:再加上一层与父元素同级的div装载子元素,定位到子元素原来的位置

3web标准以及w3c的理解与认识?

  答案:web标准就是将页面的结构、表现和行为各自独立实现,w3c对标注提出了规范化的要求

  对结构的要求:(标签规范可以提高搜索引擎对页面的抓取效率,对SEO很有帮助)

  标签字母要小写;标签要闭合;标签不允许随意嵌套

  cssjs的要求:

  尽量使用外联css样式表和js脚本,使结构、表现、行为相分离,符合规范,同时提高页面渲染速度,提高用户体验;

  样式尽量少用行间样式表,使结构与表现分离,标签的idclass命名要做到见文知义,标签越少,加载越快,用户体验更高,代码维护更简单,便于改版;

  不需要变动页面内容,便可提供打印版本而不需要复制内容,提高网站易用性

4display none visibility hidden区别?

  答案:display:none是彻底消失,不在文档流中占位,浏览器也不会解析该元素;visibility:hidden是视觉上消失了,可以理解为透明度为0的效果,在文档流中占位,浏览器会解析该元素;

  使用visibility:hiddendisplay:none性能上要好,display:none切换显示时visibility,页面产生回流(当页面中的一部分元素需要改变规模尺寸、布局、显示隐藏等,页面重新构建,此时就是回流。所有页面第一次加载时需要产生一次回流),而visibility切换是否显示时则不会引起回流。

5Pxemrem的区别

  答案:相同点:pxemrem都是长度单位;

  异同点:px的值是固定的,指定是多少就是多少,计算比较容易。em得值不是固定的,并且em会继承父级元素的字体大小。Rem是根据跟标签HTML的字体大小计算的

  浏览器的默认字体高都是16px。所以未经调整的浏览器都符合: 1em=1rem=16p

  那么12px=0.75em=0.75rem, 10px=0.625em=0.625rem