1.网页乱码的问题是如何产生的?
乱码产生的原因是文件编码格式与浏览器解码格式不一致。
就像两个说着不同语言的人交流一样,互相不明白对方在说什么,但尝试着去理解对方表达的意思而因此产生误解。为此,在写html的时候,需要在head标签里面加一句编码声明来表明编码格式。
<meta charset="UTF-8">
utf-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,又称万国码。UTF-8用1到6个字节编码UNICODE字符。用在网页上可以同一页面显示中文简体繁体及其它语言(如英文,日文,韩文)。
在中国地区,常用的编码方式有UTF-8和GBK。但是为了国际化,建议使用UTF-8格式,这样国外用户访问中文网站的时候就不会出现乱码。
延伸阅读:
2.颜色有几种写法, 红色、 绿色、蓝色、白色、黑色如何表示? 透明黑色如何表示?#ccc 的颜色, #eee 的颜色? #333 的颜色?
颜色有3种写法。分别为:
- 十六进制
- 颜色关键字
- rgb(r,g,b)
颜色 | 十六进制 | 颜色关键字 | rgb(r,g,b) |
---|---|---|---|
白色 | #FFFFFF | white | rgb(255,255,255) |
黑色 | #000000 | black | rgb(0,0,0) |
红色 | #FF0000 | red | rgb(255,0,0) |
绿色 | #00FF00 | green | rgb(0,255,0) |
蓝色 | #0000FF | blue | rgb(0,0,255) |
灰色 | #CCCCCC | rgb(204,204,204) | |
浅灰 | #EEEEEE | rgb(238,238,238) | |
深灰 | #333333 | rgb(51,51,51) |
另外,rgb还可以加个透明度(Alpha参数),这个参数是一个介于0.0(完全透明)到1.0(完全不透明)之间的数值。
如,透明黑色表示为:rgba(0,0,0,0)
工具网站:
3.<!DOCTYPE html> 的作用是什么?
<!DOCTYPE html>则是说明这是html5标准的hmtl文档,以此来告诉浏览器应该以html5标准来呈现页面。而且这个声明必须在html文档的第一行,位于所有标签的前面。
<!DOCTYPE> 声明与html,body这些html标签不一样,严格上来说,它并不是html标签,它的作用就是告诉浏览器你当前的页面使用的是哪个html版本。
<!DOCTYPE> 声明不区分大小写,所有的html5标签都不区分大小写,但是按书写习惯在html文件中,<!DOCTYPE> 大写,别的html标签全部小写。
<!DOCTYPE>声明没有结束标签,不要写成这样 <!DOCTYPE html />
延伸阅读:
4.严格模式和混杂模式指什么?
当浏览器厂商开始创建与标准兼容的浏览器时,它们希望确保向后兼容。为了实现这一点,他们创建了两种呈现模式:标准模式和混杂模式。
- 在标准模式中,浏览器根据规范呈现页面;
- 在混杂模式中,页面以一种较宽松的向后兼容的方式显示。混杂模式通常会模拟老式浏览器(比如IE4)的行为以防老站点无法工作。
DOCTYPE与各种模式的关系(各种模式的触发):
- 标准模式:<!DOCTYPE html>
- 混杂模式:不写DOCTYPE
两种模式的表现差异
- 标准模式是对统一标准实现最好的模式,它要求标签必须闭合(唯一不需要闭合的就是DOCTYPE标签),不能使用已经废弃的标签等等。
- 混杂模式则是不可取的,因为其没有兼容性可言。
延伸阅读:
5.meta 有什么作用,常见的值有哪些?
<meta> 元素可以提供有关页面的元信息(meta-information),比如针对搜索引擎和更新频度的描述和关键词。
不建议为了让搜索引擎收录而去滥用meta标签而在页面塞满关键词。
meta标签必须在head标签中。其次,元数据总是以名称/值的形式被成对传递的。
常见属性有:charset; content; http-equiv; name。(具体值直接参考标准)
- name 属性,主要用于描述网页,需要配合另外一个属性值 content 使用。name 主要有以下几种参数:
- keywords (帮助搜索引擎知道网页关键字)
- description (描述网站主要内容)
- author (网页作者)
格式:<meta name="参数" content="参数变量值">
- http-equiv 属性,http协议的响应头报文。它可以向浏览器传回一些有用的信息,以帮助正确和精确地显示网页内容。跟 name 属性一样,需要配合 content 属性使用。
http-equiv 主要有以下参数:
- Expires (可以用于设定网页到期时间。一旦到期,必须到服务器上重新传输)
- Pragma (禁止浏览器从本地计算机的缓存中访问页面内容)
- Refresh (自动刷新并指向新页面)
- Set-Cookie (如果网页国旗,那么存盘的cookie将被删除)
- Window-target (强制页面在当前窗口以独立页面显示)
格式:<meta http-equiv="参数" content="参数变量值">
延伸阅读:
6.<meta http-equiv="X-UA-compatible" content="IE=edge, chrome=1" 有什么作用?
X-UA-Compatible 是 IE8 追加的一个设置(所以,IE8 以下是不支持的)。
这用来设置浏览器优先使用什么模式来渲染页面。IE=edge,告诉 IE 使用最新引擎来渲染页面;chrome=1 则表示可以激活 Chrome Frame。
延伸阅读:
7.常见的浏览器有哪些,什么内核?
浏览器 | 内核 |
---|---|
Google Chrome | Blink |
Mozilla FireFox | Gecko |
Opera | Presto |
Safari | Webkit |
IE | Trident |