这两个DOCTYPE声明有什么不同?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">和
<!DOCTYPE html>使用这些方法的后果是什么,它们对SEO有何影响?
发布于 2016-05-31 06:51:27
在HTML4.01中,<!DOCTYPE>声明引用文档类型定义( Document Type Definition,DTD)。这是因为HTML4.01是基于标准通用标记语言(SGML)的。
DTD指定标记语言的规则,以便浏览器正确呈现内容。
HTML5不是基于SGML的,因此不需要引用DTD。
这就是为什么HTML5只有一个文档类型。这是您示例中的第二个示例。
<!DOCTYPE html>另一方面,HTML4.0.1有三种文档类型
HTML :这个DTD包含所有的元素和属性,但不包括表征性的或不推荐使用的元素(如)。不允许使用框架集。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">:这个包含所有的元素和属性,包括表象元素和不推荐使用的元素(如字体)。不允许使用框架集。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">框架集:此DTD等同于HTML4.01转换,但允许使用框架集内容。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">XHTML也有三种doctype。
HTMLXHTML1.0严格:此DTD包含所有元素和属性,但不包括表示形式的或不推荐使用的元素(如字体)。不允许使用框架集。标记还必须编写为格式良好的XML。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">HTMLXHTML1.0过渡性:这个DTD包含所有的元素和属性,包括表征性的和不推荐使用的元素(如字体)。不允许使用框架集。标记还必须编写为格式良好的XML。
这是您的第一个示例中的示例
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">XHTML1.0框架集:此等同于XHTML1.0转换,但允许使用框架集内容。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">发布于 2016-05-31 08:25:06
DOCTYPE将在多大程度上影响您,这当然取决于用于任何给定页面布局的技术。因此,如果您使用s作为主要框架来设计IE4,则不会遇到太多问题。但是,如果您使用CSS进行布局控制,并且需要对页面中各种元素的位置进行可靠的控制,则会遇到跨浏览器兼容性问题。其中最值得注意的是我之前提到的Internet Explorer旧版本中的非标准盒子模型测量。
https://stackoverflow.com/questions/37534406
复制相似问题