Web前端基础知识(一)

HTML、XML、XHTML 有什么区别

要分清三者的区别,首先我们要知道它们的概念。
HTML的定义

这里写图片描述

XML的定义

这里写图片描述

XHTML的定义

这里写图片描述

从概念上来看,我们大概能理解它们的区别,但是我们需要进一步的分析它们,就需要从代码方面来看了。

  • HTML的代码如下所示
    这里写图片描述
  • XML的代码如下所示
    这里写图片描述
  • XHTML的代码如下所示
    这里写图片描述

总结:
       XHTML被发明出来是为了能更好地去规范HTML,因为HTML的书写和规定不是那么规范,所以出了一个更严格的版本去规范它,这个新版本就是XHTML,它的语法和基本使用规则和HTML几乎一模一样,XHTML以后将渐渐取代HTML。
        XML则是用于用来传输和存储数据,它是不作为的,只是作为纯文本来传输数据,正如上面的代码那样,你可以自己发明标签,而不是像html那样必须使用规定的标签。


怎样理解内容与样式分离的原则

表现和内容分离是网页布局一直倡导的原则,也是当下很流行的做法。
CSS和HTML分离的优点有以下几点

1. 修改网页时更方便快捷

在修改页面样式的时候,根据内容标记,到CSS里找到对应的id或者是class,可以非常迅速地更改页面样式。

2. 页面载入得更快

因为将大部分代码写在了CSS中,使页面体积变小,浏览器加载速度快。

3.更好地被搜索引擎收录

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


有哪些常见的meta标签

所有浏览器都能支持<meta>标签.
在html里没有结束标签
位于head元素内部
* charset属性:规定HTML文档的字符编码,是HTML5中的新属性,常用的字符编码有UTF-8,ISO–8859-1,你也可以用其他字符编码,但不是所有的浏览器都能够理解它们,所以一般提倡使用广泛的字符。
* http-equiv属性:提供了content属性的信息的HTTP头,可用来模拟HTTP相应头,比如这个代码就是告诉浏览器,每30秒刷新一次。
* name属性:定义文档的描述,关键词,作者。
* content属性:定义和http-equiv或者name属性相关的元信息。

<meta>标签的作用:**

1. 声明编码

<meta charset='utf-8' />

2. 优先使用 IE 最新版本和 Chrome,声明优先使用的浏览器

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<!-- 使用chorm浏览器 -->
<meta http-equiv="X-UA-Compatible" content="IE=6" ><!-- 使用IE6 -->

3. 浏览器内核控制

<meta name="renderer" content="webkit|ie-comp|ie-stand">
国内浏览器很多都是双内核(webkit和Trident),使用该标签可以控制浏览器选择何种内核渲染。
简单举例,国内双核浏览器有以下几种:
搜狗高速浏览器、QQ浏览器、360极速浏览器、遨游浏览器。

4. 禁止用户脱机浏览

<meta http-equiv="Pragma" content="no-cache">

5. 优化移动设备浏览器的显示,比如手机浏览,如果不是响应式网站,不使用initial-scale或者禁用缩放。

<meta name="viewport" content="width=device-width, initial-scale=1.0,maximum-scale=1.0, user-scalable=no"/>

6. 针对不识别Viewport的手持设备进行优化

<meta name="HandheldFriendly" content="true">

7.强制竖屏

<!-- QQ强制竖屏 -->
<meta name="x5-orientation" content="portrait">


文档声明的作用?严格模式和混杂模式指什么?<!doctype html> 的作用?

HTML中文档声明指的是 ,必须是 HTML 文档的第一行,位于 <html> 标签之前,加上doctype声明,让浏览器使用标准模式——这就是它的作用。

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

怎么区分:
浏览器解析时到底使用严格模式还是混杂模式,与网页中的 DTD 直接相关。
1、如果文档包含严格的 DOCTYPE ,那么它一般以严格模式呈现。(严格 DTD ——严格模式)
2、包含过渡 DTD 和 URI 的 DOCTYPE ,也以严格模式呈现,但有过渡 DTD 而没有 URI (统一资源标识符,就是声明最后的地址)会导致页面以混杂模式呈现。(有 URI 的过渡 DTD ——严格模式;没有 URI 的过渡 DTD ——混杂模式)
3、DOCTYPE 不存在或形式不正确会导致文档以混杂模式呈现。(DTD不存在或者格式不正确——混杂模式)
4、HTML5 没有 DTD ,因此也就没有严格模式与混杂模式的区别,HTML5 有相对宽松的语法,实现时,已经尽可能大的实现了向后兼容。( HTML5 没有严格和混杂之分)

浏览器乱码的原因是什么?如何解决?

一般来说,有以下三个原因,
1. 比如网页源代码是gbk的编码,而内容中的中文字是utf-8编码的,这样浏览器打开即会出现html乱码。反之网页是编码utf-8,内容是gbk也会出现乱码。
解决方法:使用软件进行编辑HTML网页内容,推荐使用WebStorm软件进行HTML代码编辑和开发。 尽量不要直接使用记事本进行编辑HTML代码。
2. html网页编码是gbk,而程序从数据库中调出呈现是utf-8编码的内容也会造成编码乱码。
解决方法:如果网页设置编码是gbk的,而数据库储存数据编码格式是UTF-8的,这个时候程序查询数据库数据显示数据前进程序转码即可。
3. 浏览器不能自动检测网页编码,造成网页乱码。
解决方法:这个可能是你网页没有设置meta charset编码造成。导致浏览器不能识别你网页默认编码类型。在网页空白处点击鼠标右键,即可选择“编码,将编码改为UTF-8。”


常见的浏览器有哪些,什么内核?

  1. Trident内核——IE、傲游、世界之窗浏览器、Avant、腾讯TT、Netscape 8、NetCaptor、Sleipnir、GOSURF、GreenBrowser和KKman等。
  2. Gecko内核——Firefox、Netscape6至9。
  3. WebKit内核——Safari、Chrome。
  4. Presto内核——OperaPresto。

参考资料:
http://www.w3school.com.cn/html/html_jianjie.asp
http://www.runoob.com/tags/att-meta-http-equiv.html
http://www.cnblogs.com/wuqiutong/p/5986191.html
https://jingyan.baidu.com/article/5553fa82d50eaf65a339346c.html
https://tink.gitbooks.io/fe-collections/content/ch02-html/s03-meta.html

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值