当前位置: 欧洲杯竞猜 > 计算机知识 > 正文

从严形式与混杂形式怎么着区分,史上最全的前

时间:2019-12-21 20:58来源:计算机知识
史上最全的前端面试总结整理来源于业余草:你如何理解HTML结构的语意化去掉或样式丢失的时候能让页面呈现清晰的结构;屏幕阅读器会完全根据你的标记来“读”你的网页;PDA、手机

史上最全的前端面试总结整理来源于业余草:你如何理解HTML结构的语意化去掉或样式丢失的时候能让页面呈现清晰的结构;屏幕阅读器会完全根据你的标记来“读”你的网页;PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页;搜索引擎的爬虫也依赖于标记来确定上下文和各个关键字的权重;你的页面是否对爬虫容易理解非常重要,因为爬虫很大程度上会忽略用于表现的标记,而只注重语义标记;便于团队开发和维护。Doctype文档声明的严格模式和混杂模式,如何触发这两种模式,区分它们有何意义如何触发两种模式加入xml头部声明,可以触发IE浏览器的Quirksmode,触发之后,浏览器解析方式就和IE5.5一样,拥有IE5.5一样的bug和其他问题,行为也是如此。IE6的触发:在XHTML的DOCTYPE前加入XML声明?xmlversion="1.0"encoding="utf-8"?!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Strict//EN"""IE7的触发:在XML声明和XHTML的DOCTYPE之间,加入HTML注释?xmlversion="1.0"encoding="utf-8"?!–…andkeepIE7inquirksmode–!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Strict//EN"""IE6和IE7都可以触发的:在HTML4.01的DOCTYPE文档头部,加入HTML注释!–quirksmode–!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01//EN"""在页面顶部加!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN",将触发“怪异模式”没有使用DTD声明或者使用HTML4以下的DTD声明时,基本上所有的浏览器都是使用quirksmode呈现...............鉴于内容的篇幅问题,总结这篇文章中包含以下内容知识点!谈谈以前端角度出发做好SEO需要考虑什么?我们知道可以以外链的方式引入CSS文件,请谈谈外链引入CSS有哪些方式,这些方式的性能有区别吗CSSSprite是什么,谈谈这个技术的优缺点行内元素有哪些?块级元素有哪些?CSS的盒模型前端页面有哪三层构成,分别是什么?作用是什么html中form里action方法的get和post有什么区别html元素的id跟class什么区别Ajax是什么你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么?经常遇到的浏览器的兼容性有哪些?怎么会出现?解决方法是什么?HTML5离线存储iframe的优缺点CSS盒模型原理整理来源于业余草:

HTML、XML、XHTML 有什么区别

HTML全名为**超文本标记语言**(Hyper Text Markup Language),是用于创建Web的标准的标记语言。

HTML编码不规范,表现、结构混乱。不利于开发和维护

XML全名为**可扩展标记语言**(Extensible Markup Language),它也是一种标记语言,不过它的标记是可以自定义的,通常用来传送及携带数据。

XHTML是根据HTML 4 和 XML 1.0重组而成。改进了HTML定义不规范,结构不严谨的缺点。它的语法更加严格,相对HTML的兼容性也不差。


转载自CSDN博客,原文地址:

HTML 语义化

语义化HTML是一种编写HTML的方式

选择合适的标签、使用合理的代码结构,便于开发者阅读,同时让浏览器的爬虫和机器很好地解析。


Doctype:(Document Type)文档类型,它位于文档中最前面的位置,处于标签之前。如果你想制作符合标准的页面,一个必不可少的关键组成部分就是DOCTYPE的声明。确定了正确的Doctype,xhtml里面的标识和css才能正常生效(也就是说它会很负责地告诉浏览器怎么解释你的这个标签和你写的css)。既然它是一种声明,它的责任就是告诉浏览器文档使用哪种html或者xhtml规范。为了获取正确的Doctype声明,关键就是让dtd与文档所遵循的标准对应。例如:假定文档遵循的是xhtml 1.0 strict,那么文档的Doctype声明就应该是相应的dtd,如果Doctype声明指定的是xhtml dtd,但文档包含的依旧是html标记就是不恰当的。类似的,如果文档包含的是xhtml 1.0 strict标记,但是Doctype声明指定是html dtd也是不恰当的。

有哪些常见的meta标签(资料翻阅w3cschool)

content:定义与http-equiv或name相关的元信息。

http-equiv:将content值关联到http头部。

name:将content值关联一个名称。

scheme:定义用于翻译content的格式。

常用的charset:定义使用的浏览器文本字符集。


一、选择什么样的DOCTYPE?

xhtml 1.0中有3种dtd声明可以选择,过渡性的(Transitional)、严格的(Strict)、框架的(Frameset)。下面我们来分别介绍:

CSS与HTML分离的优点

1、使页面载入得更快

由于将大部分页面代码写在了CSS当中,使得页面体积容量变得更小。相对于表格嵌套的方式的逐层加载速度快。

2、修改设计时更有效率

在修改页面的时候更加容易省时。根据区域内容标记,到CSS里找到相应的ID,使得修改页面的时候更加方便,也不会破坏页面其他部分的布局样式。而表格布局则更不省事。

4、保持视觉的一致性

DIV CSS最重要的优势之一:保持视觉的一致性;以往表格嵌套的制作方法,会使得页面与页面,或者区域与区域之间的显示效果会有偏差。

5、更好地被搜索引擎收录

由于将大部分的HTML代码和内容样式写入了CSS文件中,这就使得网页中代码更加适合搜索引擎。

6、对浏览者和浏览器更具亲和力

对浏览者和浏览器更具亲和力,由于CSS富含丰富的样式,使页面更加灵活性,更加的美观,它可以根据不同的浏览器,而达到显示效果的统一和不变形。

CSS与HTML分离的缺点

1、CSS网站制作的设计元素通常放在1个外部文件中,或几个文件,有可能相当复杂,甚至比较庞大。

3、虽然说DIV CSS解决了大部分浏览器兼容问题,但是也有在部分浏览器中使用出现异常,比如火狐浏览器,在IE中显示正常的页面,到了火狐浏览器中可能会面目全非。当然这应该是浏览器的问题,但是可以说在目前来看,DIV CSS还没有实现所有浏览器的统一兼容。

4、DIV CSS对搜索引擎优化与否,取决于网页设计的专业水平,而不是DIV CSS本身。


1、过渡的:一种要求不很严格的,允许在html中使用html 4.01的标识(符合xhtml语法标准),过渡的dtd写法如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ";

一、Doctype作用是什么?

声明叫做文件类型定义(DTD),声明的作用为了告诉浏览器该文件的类型。让浏览器解析器知道应该用哪个规范来解析文档。声明必须在 HTML 文档的第一行,这并不是一个 HTML 标签。

2、严格的:一种要求严格的dtd,不允许使用任何表现层的标识和属性,严格的dtd写法如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" ";

二、严格模式与混杂模式如何区分?它们有何意义?

严格模式:又称标准模式,是指浏览器按照 W3C 标准解析代码。

混杂模式:又称怪异模式或兼容模式,是指浏览器用自己的方式解析代码。


一、常用的具体声明:

1、HTML5(一种):<!DOCTYPE html>

2、HTML 4.01(三种):!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  ""

HTML 4.01 Strict :<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" ";

HTML 4.01 Transitional :<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"  ";

HTML 4.01 Frameset :<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"  ";

3、XHTML 1.0(四种):前三种模式同上,XHML 必须以格式正确的 XML 来编写标记。

XHTML 1.0Strict:< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  ";

XHTML 1.0 Transitional :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ;

XHTML 1.0 Frameset:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"  ";

XHTML 1.1 该 DTD 等同于 XHTML 1.0 Strict,但允许添加模型:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" ";


3、框架的:一种专门针对框架页面所使用的dtd,当页面中含有框架元素时,就要采用这种dtd,写法如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ";

使用严格的dtd来制作页面当然是最理想的方式,但是对于还没有深入了解web标准的网页设计者,比较适合用过渡的dtd,因为这种dtd还允许使用表现层的标识、元素和属性,比较适合大多数的网页制作人员(当然量力而为了!)

乱码造成原因  

1、比如网页源代码是gbk的编码,而内容中的中文字是utf-8编码的,这样浏览器打开即会出现html乱码。反之网页是编码utf-8,内容是gbk也会出现乱码。

2、html网页编码是gbk,而程序从数据库中调出呈现是utf-8编码的内容也会造成编码乱码。

3、浏览器不能自动检测网页编码,造成网页乱码


二、什么是标准模式与混杂模式?

不同文档模式主要影响CSS内容的呈现,尤其是浏览器对盒模型的解析,但在某些情况下也会影响到JavaScript的解释执行。

浏览器及其内核

一、Trident内核代表产品Internet Explorer,又称其为IE内核。Trident(又称为MSHTML),是微软开发的一种排版引擎。使用Trident渲染引擎的浏览器包括:IE、傲游、世界之窗浏览器、Avant、腾讯TT、Netscape 8、NetCaptor、Sleipnir、GOSURF、GreenBrowser和KKman等。

二、Gecko内核代表作品Mozilla FirefoxGecko是一套开放源代码的、以C 编写的网页排版引擎。Gecko是最流行的排版引擎之一,仅次于Trident。使用它的最著名浏览器有Firefox、Netscape6至9。

3

三、WebKit内核代表作品Safari、Chromewebkit 是一个开源项目,包含了来自KDE项目和苹果公司的一些组件,主要用于Mac OS系统,它的特点在于源码结构清晰、渲染速度极快。缺点是对网页代码的兼容性不高,导致一些编写不标准的网页无法正常显示。主要代表作品有Safari和Google的浏览器Chrome。

4

四、Presto内核代表作品OperaPresto是由Opera Software开发的浏览器排版引擎,供Opera 7.0及以上使用。它取代了旧版Opera 4至6版本使用的Elektra排版引擎,包括加入动态功能,例如网页或其部分可随着DOM及Script语法的事件而重新排版



1、文档模式目前有四种:

混杂模式(quirks mode)

让IE的行为与(包含非标准特性的)IE5相同

标准模式(standards mode)

让IE的行为更接近标准行为

准标准模式(almost standards mode)

这种模式下的浏览器特性有很多都是符合标准的,不标准的地方主要体现在处理图片间隙的时候(在表格中使用图片时问题最明显)。

超级标准模式

IE8引入的一种新的文档模式,超级文档模式可以让IE以其所有版本中最符合标准的方式来解释网页内容。

总的来看,混杂模式让IE像IE5,标准模式使用IE7的呈现引擎,而超级标准模式则是IE8的默认文档模式。

2、两种模式间的差异

对于这两种模式之间的差异,最显著的一个例子与Windows上IE专有的盒模型有关。在IE 6出现时,在标准模式中使用的是正确的盒模型,在混杂模式中使用的则是老式的专有盒模型。为了维持对IE 5和更低版本的向后兼容性,Opera 7和更高版本也在混杂模式中使用有缺点的IE盒模型。

呈现方面的其他差异比较小,而且是与特定浏览器相关的,包括对于十六进制颜色值不需要#号、假设CSS中没有指定单位的长度的单位是像素,以及在使用关键字时将字号增加一级。

3、如何触发两种模式

DOCTYPE不存在或形式不正确会导致HTML和XHTML文档以混杂模式呈现。

触发严格模式:

<!--HTML 4.01 严格型-->

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" ";

<!--XHTML 1.0 严格型-->

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" ";

触发混杂模式:

<!-- HTML 4.01 过渡型-->

<!DOCTYPE HTMLPUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ";

<!-- HTML 4.01 框架集型-->

<!DOCTYPE HTMLPUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" ";

<!-- XHTML 1.0 过渡型-->

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ";

<!-- XHTML 1.0 框架集型-->

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" ";

IE8关闭超标准模式:

<meta http-equiv="X-UA-Compatible" content="IE=7">

content属性中IE的值用于指定使用哪个版本的呈现引擎来呈现页面。设计这个值的目的就是为了向后兼容那些专门为老版本的IE设计的站点和页面。

编辑:计算机知识 本文来源:从严形式与混杂形式怎么着区分,史上最全的前

关键词: 欧洲杯竞猜