前端—每天5道面试题
Posted 每天都在慢慢进步的王同学
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前端—每天5道面试题相关的知识,希望对你有一定的参考价值。
前端—每天5道面试题(十)
每天进步1% 不多 就1%
一、用 div+css 布局的好处?
表现和内容相分离
将设计部分剥离出来放在一个独立样式文件中,html 文件中只存放文本信息。
提高搜索引擎对网页的索引效率
用只包含结构化内容的 HTML 代替嵌套的标签,搜索引擎将更有效地搜索到你的网页内容,并可能给你一个较高的评价。
提高页面浏览速度
对于同一个页面视觉效果,采用 CSS+DIV 重构的页面容量要比 TABLE 编码的页面文件容量小得多,前者一般只有后者的1/2大小。
易于维护和改版
你只要简单的修改几个 CSS 文件就可以重新设计整个网站的页面。从以上的描述来看,采用CSS+DIV 对网站重构可以大大提升网站用户与搜索引擎的友好度,CSS+DIV 所以成为目前网页布局主流。
二、css 去掉 iPhone、iPad 默认按钮样式
input[type="button"], input[type="submit"], input[type="reset"] {
-webkit-appearance: none;
}
textarea {
-webkit-appearance: none;
}
三、网页的重绘与重排以及重构
- 重绘是一个元素外观的改变所触发的浏览器行为,例如改变
visibility、outline、背景色等属性。浏览器会根据元素的新属性重新绘制,使元素呈现新的外观。重绘不会带来重新布局,并不一定伴随重排。 - 重排是更明显的一种改变,可以理解为渲染树需要重新计算(注:重排对性能有很大的影响)。下面是常见的触发重排的操作:
(一)、DOM 元素的几何属性变化
(二)、 DOM 树的结构变化
(三)、获取某些属性
(四)、改变元素的一些样式,调整浏览器窗口大小等等也都将触发重排。
- 页面重构:编写 CSS、让页面结构更合理化,提升用户体验,实现良好的页面效果和提升性能。
- 网站重构:在不改变外部行为的前提下,简化结构、添加可读性,而在网站前端保持一致的行 为。也就是说是在不改变 UI 的情况下,对网站进行优化。
对于传统的网站来说重构通常是:
- 表格(table)布局改为 DIV+CSS
- 对于移动平台的优化
- 针对于 SEO 进行优
深层次的网站重构应该考虑的方面:
- 减少代码间的耦合
- 让代码保持弹性
- 严格按规范编写代码
- 设计可扩展的 API
- 代替旧有的框架、语言(如 VB)
- 增强用户体验
- 优化响应速度
速度的优化重构:
- 压缩 JS、CSS、image 等前端资源(通常是由服务器来解决)
- 程序的性能优化(如数据读写)
- 采用 CDN 来加速资源加载
- 对于 JS DOM 的优化
- HTTP 服务器的文件缓存
四、Sass、LESS 是什么?大家为什么要使用他们?
- 他们是 CSS 预处理器。他是 CSS 上的一种抽象层。他们是一种特殊的语法/语言编译成 CSS。
- 例如 Less 是一种动态样式语言. 将 CSS 赋予了动态语言的特性,如变量,继承,运算, 函数. LESS 既可以在客户端上运行,也可一在服务端运行 (借助 Node.js)。
为什么要使用它们?
-
结构清晰,便于扩展。
-
可以轻松实现多重继承。
-
可以方便地屏蔽浏览器私有语法差异。这个不用多说,封装对浏览器语法差异的重复处理, 减少无意义的机械劳动。
-
完全兼容 CSS 代码,可以方便地应用到老项目中。LESS 只是在 CSS 语法上做了扩展,所以老的 CSS 代码也可以与 LESS
五、谈谈以前端角度出发做好 SEO 需要考虑什么?
了解搜索引擎如何抓取网页和如何索引网页
- 你需要知道一些搜索引擎的基本工作原理,各个搜索引擎之间的区别,搜索机器人(SE robot或叫 web crawler)如何进行工作,搜索引擎如何对搜索结果进行排序等等。
Meta 标签优化
- 主要包括主题(Title),网站描述(Description),和关键词(Keywords)。还有一些其它的隐藏文字比如
Author(作者),Category(目录),Language(编码语种)等。
如何选取关键词并在网页中放置关键词
搜索就得用关键词。关键词分析和选择是 SEO 最重要的工作之一。首先要给网站确定主关键词(一般在5个上下),然后针对这些关键词进行优化,包括关键词密度(Density),相关度(Relavancy),突出性(Prominency)等等。
了解主要的搜索引擎
- 虽然搜索引擎有很多,但是对网站流量起决定作用的就那么几个。比如英文的主要有 Google,Yahoo,Bing
等;中文的有百度,搜狗,有道等。不同的搜索引擎对页面的抓取和索引、排序的规则都不一样。还要了解各搜索门户和搜索引擎之间的关系,比如 AOL 网页搜索用的是 Google 的搜索技术,MSN 用的是 Bing 的技术。
主要的互联网目录
- Open Directory
自身不是搜索引擎,而是一个大型的网站目录,他和搜索引擎的主要区别是网站内容的收集方式不同。目录是人工编辑的,主要收录网站主页;搜索引擎是自动收集的,除了主页外还抓取大量的内容页面。
按点击付费的搜索引擎
- 搜索引擎也需要生存,随着互联网商务的越来越成熟,收费的搜索引擎也开始大行其道。最典型的有 Overture 和百度,当然也包括Google 的广告项目 Google Adwords。越来越多的人通过搜索引擎的点击广告来定位商业网站,这里面也大有优化和排名的学问,你得学会用最少的广告投 入获得最多的点击。
搜索引擎登录
- 网站做完了以后,别躺在那里等着客人从天而降。要让别人找到你,最简单的办法就是将网站提交(submit)到搜索引擎。如果你的是商业网站,主要的搜索引擎和目录都会要求你付费来获 得收录(比如 Yahoo 要 299 美元),但是好消息是(至少到目前为止)最大的搜索引擎 Google 目前 还是免费,而且它主宰着 60%以上的搜索市场。
链接交换和链接广泛度(Link Popularity)
- 网页内容都是以超文本(Hypertext)的方式来互相链接的,网站之间也是如此。除了搜索引 擎以外,人们也每天通过不同网站之间的链接来Surfing(“冲浪”)。其它网站到你的网站的链接越多,你也就会获得更多的访问量。更重要的是,你的网站的外部链接数越多,会被搜索引擎认为 它的重要性越大,从而给你更高的排名。
以上是关于前端—每天5道面试题的主要内容,如果未能解决你的问题,请参考以下文章