HMTL , XML , XHTML的区别
- HTML (HyperTetx Markup Language) 是一种用于创建网页的标准标记语言,网页浏览器可以可以读HTML文件,并将其渲染成可视化网页,HTML语言用来表现数据,旨在显示数据,其焦点是数据的外观。
- XML (Extension Markup Language) 被广泛用来作为跨平台之间交互数据的形式,主要针对数据的内容,通过不同的格式化描述手段可以完成最终的形式表达,设计用来传送及携带数据信息,不用来表现或展示数据,XML用途的焦点是它说明数据是什么,以及携带数据信息。
- XHTML(Extensible HyperText Markup Language)是一种标记语言表现方式与超文本标记语言类似,不过语法上更加严格。XHTML主要是因为HTML的语法规则过于松散,对于机器来说语言越松散,处理起来就越困难,因此才产生了语法要求更为严格的XHTML,它包含了所有与 XML 语法结合的 HTML 4.01 元素。
怎样理解HTML语义化
语义化HTML是一种编写HTML的方式,它强调编码信息的含义在其格式(样子)之上,选择合适的标签、使用合理的代码结构,便于开发者阅读,同时让浏览器的爬虫和机器很好地解析,好的语义化HTML也改善了网页文档的可访问性。
怎样理解内容与样式分离的原则
从大原则上来说,内容与样式的分离可以使得代码松散耦合,避免某个部分过分依赖另外一个部分,耦合过紧,难于维护。
- 写 HTML 的时候先不管样式, 重点放在HTML的结构和语义化上,让 HTML 能体现页面结构或者内容。之后再去写样式。
- 尽量不要用 JS 去直接操作样式,而是通过给元素添加删除class来控制样式变化
- HTML 内不允许出现属性样式,尽量不要出现行内样式
文档声明的作用,严格模式和混杂模式指什么,<!doctype html> 的作用
- 文档声明它是指示 web 浏览器,这个页面文档使用的是哪个 HTML(或是XML) 版本进行编写的指令,需要注意的是
<!doctype >
不是一个标签。 - 不同文档模式主要影响CSS内容的呈现,尤其是浏览器对盒模型的解析,但在某些情况下也会影响到JavaScript的解释执行。混杂模式是一种比较宽松的向后兼容的模式,混杂模式通常模拟老式浏览器的行为,以防止老站点无法工作。标准模式是浏览器使用W3C的标准解析渲染页面。
浏览器乱码的原因是什么,如何解决
浏览器乱码的根本原因在于浏览器对html文本的解码和编写html文本时候的编码并不匹配造成的。那么解决这个问题的方法也就是在编写html文件是规定好文档的格式是什么,比如你希望浏览器用utf-8来解码,那么你应该在html的头部声明,<meta charset = "utf-8>
,这样浏览器就会按照你规定的格式来解码这个页面了。
常见的浏览器有哪些及其内核
在写代码的时候需要兼容的浏览器一般为一下几个,国产的例如360浏览器一般都是采用的以下某个或者几个内核。
内核 | 浏览器名称 |
---|---|
Trident | IE, 国内某些双核浏览器的内核之一 |
Gecko | 以前的Netscape, 如今的 Mozilla Firefox |
Webkit | Chrome, safari |
Blink (Webkit的一个分支,由google和opera研发) | 2013年之后的Chrome, Opera, 以及360浏览器等双核浏览器内核之一 |
Presto | 2013年以前的Opera |
常见的meta标签
<meta>
元素可提供有关页面的元信息(meta-information),比如针对搜索引擎和更新频度的描述和关键词。
<meta>
标签位于文档的头部,不包含任何内容。<meta> 标签的属性定义了与文档相关联的名称/值对。
<meta charset='utf-8' /> |
申明编码 |
---|---|
<meta name="renderer" content="webkit ie-comp ie-stand"> |
浏览器内核控制:国内浏览器很多都是双内核(webkit和Trident),webkit内核高速浏览,IE内核兼容网页和旧版网站。而添加meta标签的网站可以控制浏览器选择何种内核渲染 |
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> |
优先使用 IE 最新版本和 Chrome |
<meta name="keywords" content="your tags" /> |
页面关键词,每个网页应具有描述该页内容的一组唯一的关键字。使用人们可能会搜索,并准确描述网页上所提供信息的描述性和代表性关键字及短语。标记内容太短,则搜索引擎可能不会认为这些内容相关。另外标记不应超过 874 个字符 |
<meta name="description" content="150 words" /> |
页面描述,每个网页都应有一个不超过 150 个字符且能准确反映网页内容的描述标签 |
<meta http-equiv="refresh" content="0;url=" /> |
页面重定向和刷新:content内的数字代表时间(秒),既多少时间后刷新。如果加url,则会重定向到指定网页(搜索引擎能够自动检测,也很容易被引擎视作误导而受到惩罚) |
常见的标签
标签名 | 用途 |
---|---|
<html></html> |
文档元素,定义了整个 HTML 文档, |
<head></head> |
所有头部元素的容器,可包含脚本,指示浏览器在何处可以找到样式表,提供元信息,等等 |
<body></body> |
HTML 文档的主体 |
<h1></h1> ...<h6></h6>
|
1~6级标题 |
<p></p> |
段落 |
<a></a> |
链接到一个地址,页面或者是地址锚 |
<img > |
链接一个图片 |
<div></div> |
语义为“一大块”,用于给页面划分区块,让结构更清晰 |
<ul></ul> <li></li>
|
无序列表 |
<ol></ol> <li></li>
|
有序列表 |
<dl></dl> <dt></dt> <dd></dd>
|
自定义列表 |
<button > |
按钮 |
<strong></strong> <em></em> <span></span>
|
<strong></strong> 用来表示强调突出,<em></em> 强调的程度次于<strong> ,<span></span> 则是程度最低的,用来标记一段文字中需要单独使用css的字段 |
<iframe > |
用来嵌入一个页面窗口 |
<table></table> <th></th> <tr></tr> <td></td>
|
用来展示表格,不要用来做布局 thead tbody tfoot可省略,浏览器会自动添加 border-collapse: collapse;用于合并边框 |