html1

1.网页乱码的问题是如何产生的?怎样解决?

当一个网页出现在你面前的时候,它已经经历了一个写入到展示的过程:

1.使用编辑器编写HTML文件

2.保存编写的HTML文件

3.使用浏览器打开HTML文件

4.HTML文件在浏览器展示

在编辑一份代码的时候,会用一个文件来存储这份代码,这就是编码方式。这种编码计算机可读而人类不可读。例如:在网页中我们看到这样一句话:<meta charset ="utf-8"/>,这里的“utf-8”

就是一种编码方式,这个又是什么意思呢,下面我们来认识几种:

认识几种编码方式

ASCII

全称美国标准信息交换代码(American Standard Code for Information Interchange)的缩写,

为美国英语通信所设计。它由128个字符组成,包括大小写字母、数字0-9、标点符号、非打印字符(换行符、制表符等4个)以及控制字符(退格、响铃等)

组成,每个字符占7位(1字节是8位)。

ISOLatin-1

可以认为ASCII是美国发明针对英语设计的,但欧洲人在用的时候出现了问题。对于一些特殊的拉丁字符,比如法文德文里某些字符,ASCII字符集

就不包括。于是欧洲人发明了一种8位字符集是ISO 8859-1Latin

1,也简称为ISOLatin-1。它对ASCII做了个扩充,对于0-127之间的字符还使用ASCII里的字符不变,

把位于128-255之间的字符表示拉丁字母表中特殊语言字符。

UNICODE

后来计算机不断发展扩展到亚洲非洲,如何用计算机使用的二进制表示这些语言又成了问题。ISOLatin-1的8位字符集只能表示256个字符,而仅汉语就有80000以上个字符。如何把地球上绝大多数语言用一种编码方式表示出来呢? 于是发明了UNICODE编码,只用2个字节(16位)就可以编码地球上几乎所有地区的文字。

但是,UNICODE只是理论上的编码方式,相当于给世界上每个文字打了个编号,但这编号具体如何在计算机里面存储,可以有多种实现方式。比如utf-8和gbk。

前面说了UNICODE只是给每个文字打了个编号,为啥不把这个编号直接转化成二进制存储在计算机里面呢? 比如英文字母s的编号是115, 用二进制表示是00000000 1110011, 中文日的编号是26085 (16进制是65e5) ,二进制是11001011 1100101。老外才没那么傻,对于老外这种日常纯粹是用英文字符的人来说明明之前1个字节就能存储一个字母,现在为了全球大一统非要存储为2个字节,相当于一个之前一个1M的文档,现在变为2M。于是老外耍了赖,英文字母s是115没错,但我就用1个字节1110011表示,而你中文日是26085号也没错,但是你不能在使用2个表示,而是用2个甚至6个字节表示。(为了英文的特权,牺牲其他语言的存储空间的便利),这个编码方式就是UTF-8。

UTF-8

utf-8(8-bit Unicode Transformation

Format)是一种针对Unicode的可变长度字符编码,又称万国码。UTF-8用1到6个字节编码UNICODE字符。用在网页上可以同一页面显示

中文简体繁体及其它语言(如英文,日文,韩文)。

那GBK又是如何产生的呢?

GBK

这时候中国不干了,为啥你制定了全球大一统的规则,却为了自己的便利又破坏规则,把方便留给自己不便留给别人呢?

明明用2个字节就能表示中文一个汉字,现在UTF-8编码中文竟然需要2个甚至4个字节来表示。于是中国制定一套自己的规则,于是用2个字节来表示一个汉

字,总共可以覆盖2万多个文字。 对于英文,好吧让一步,还保留和你UTF-8同样的方式使用一个字节来表示。

记住:UNICODE只是给字符一个代号,而GBK和UTF-8使用不同的规则来表示同一个代号。

以上,就是关于几种编码方式的知识   (引用于饥人谷若愚老师)

编码的存储需要 编码方式 来转化,网页内容展示也需要编码方式的转化。所以,网页乱码的产生一般就是因为编码不一致产生的,比如:比如:html表单默认编码方式是“gbk”,然后浏览器默认的是“utf-8”,即如果当前页面的显示编码和获取到的值的编码不一致的话就会产生乱码。这只是其中一种情况,一个网页要正常显示涉及多处编码问题。

1模板头部编码

模板源代码中所指定的编码

2模板自身编码

是模板保存到磁盘的编码,许多站长不知道这个编码。以UE为例,在保存文件时会提示选择编码,具体到AKCMS,通过AKCMS后台保存的模板会使用和AKCMS配置(/configs/configs.inc.php)一样的编码设置

3数据编码

数据可能是数据库也可能是缓存文件或读取URL的内容,最常见的数据源是数据库。

以上编码必须统一,才能正常显式,否则页面的部分或全部就会出现乱码。

遇到网页乱码第一步是先分析问题,先定位了问题才能有针对的快速解决,否则浪费时间也没有效果:


2.颜色有几种写法, 红色、 绿色、蓝色、白色、黑色如何表示? 透明黑色如何表示?#ccc的颜色,#eee的颜色?#333的颜色?

颜色有三种表示方式,分别为十六进制,RGB代码,预定义的颜色值

十六进制的代码表示。如bgcolor=#ff0000;其中#只是表示使用6位16进制的颜色代码声明颜色。代码的头两位即ff表示三原色中的红色,范围当然是16进制的00-ff,中间两位即00表示绿色,最后两位即00表示蓝色,00表示没有颜色,ff表示颜色最强。所以000000表示黑色,ffffff表示白色,同样ff0000表示纯红色,00ff00表示纯绿色,0000ff表示纯蓝色。实际工作中,十六进制是最常用的定义颜色的方式。

RGB代码:颜色还可以用rgb(r,g,b)表示,括号中的r,g,b分别用0-255的十进制数或百分比表示红绿蓝,例如rgb(255,0,0)以及rgb(100%,0%,0%)都表示红色。

预定义的颜色值:颜色的表示还可以用颜色的关键字表示,共16个。

RGBA模式:CSS3颜色值透明表示方式

R:红色值。正整数 | 百分数

G:绿色值。正整数 | 百分数

B:蓝色值。正整数 | 百分数

A:Alpha透明度。取值0~1之间。

透明黑色 rgb(0,0,0,0.5)

Black 黑色 #000000  rgb(0,0,0,)

Green 绿色 #008000    rgb(255,180,0,)

Red 红色  #FF0000  rgb(255,0,0,)

Blue 蓝色 #0000FF  rgb(0,0,255,)

White 白色 #FFFFFF  rgb(255,255,255,)


(http://www.sioe.cn/yingyong/yanse-rgb-16/


3.<!doctype html>的作用是什么?

作用:文档声明,对文档进行解析,以HTML标准对页面进行渲染。浏览器根据文件后缀进行解析,根据文档规则对文档进行不同的编辑。

4.严格模式和混杂模式指什么?

严格模式指加了文档声明,混杂模式即未加文档声明

5.meta 有什么作用,常见的值有哪些?

meta标签共有两个属性,它们分别是http-equiv属性和name属性,不同的属性又有不同的参数值,这些不同的参数值就实现了不同的网页功能。

name的属性值又分为三种情况:

(1)设置网页关键字

name属性的 值为keywords,用于定义搜索内容,即网页关键字,content属性 的值用于定义具体内容:多个关键字内容之间用“,”隔开。

(2)设置网页描述

name属性值为description,用于定义搜索内容名称为网页描述,content属性的值用于定义描述的具体的内容。

(3)设置网页作者

name属性值为autor,用于定义搜索内容名称为网络作者


http-equiv分为以下几种情况:

(1)设置字符集

<meta http-equiv ="名称" content="值"/>

http-equiv属性值为content-type,content属性值为text/html ,charset ="utf-8",用于说明当前文档类型为html。字符集为utf-8.

(2)设置页面自动刷新与跳转

<meta http-equiv ="refresh" content ="10">,用于指定在特定的时间后跳转至目标页面,content值默认以秒为单位。

总结一下,就是在<meta>标记中使用http-equiv/content属性可以设置服务器发送给 浏览器的http头部信息,为浏览器显示该页面提供相关的参数,其中http-equiv属性提供参数类型,content属性提供对应的参数值。


6.<meta http-equiv =”X-UA-Compatible”content="IE=edge,chrome=1">有什么作用?

其中http-equiv=”X-UA-Compatible”这个是IE8的专用标记,是用来指定Internet Explorer 8 浏览器模拟某个特定版本IE浏览器的渲染方式,以此来解决IE浏览器的兼容问题。

后面一句则是让网页优先采用chrome进行渲染


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


常见的浏览器及内核如下:

常见的有IE浏览器,使用Trident

Safari浏览器,使用WebKit内核,它是苹果公司自己的内核,也是苹果的Safari浏览器使用的内核。Webkit引擎包含WebCore排版引擎及JavaScriptCore解析引擎,均是从KDE的KHTML及KJS引擎衍生而来,它们都是自由软件,在GPL条约下授权,同时支持BSD系统的开发。所以Webkit也是自由软件,同时开放源代码。Google Chrome、360极速浏览器以及搜狗浏览器高速模式也使用webkit作为内核。

FireFoxl浏览器,使用 Gecko 内核,Gecko的特点是代码完全公开,因此,其可开发程度很高,全世界的程序员都可以为其编写代码,增加功能。因为这是个开源内核,因此受到许多人的青睐

Opera浏览器,使用Presto内核,这是目前公认网页浏览速度最快的浏览器内核。link是一个由Google和Opera Software开发的浏览器排版引擎,这一渲染引擎是开源引擎WebKit中WebCore组件的一个分支,并且在Chrome(28及往后版本)、Opera(15及往后版本)和Yandex浏览器中使用。




本教程版权归饥人谷_LULU和饥人谷所有,转载须说明来源

























最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,670评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,928评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,926评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,238评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,112评论 4 356
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,138评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,545评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,232评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,496评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,596评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,369评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,226评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,600评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,906评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,185评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,516评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,721评论 2 335

推荐阅读更多精彩内容

  • 1. 网页乱码的问题是如何产生的?怎样解决 首先我们要知道 UNICODE 和 UTF-8 的概念 Unicode...
    饥人谷_沈梦圆阅读 461评论 0 0
  • 1.网页乱码的问题是如何产生的?怎么解决? 一:乱码产生的原因是:当我们保存文件时会把我们写入的文字使用编辑器默认...
    freddy阅读 555评论 0 0
  • 一、网页乱码的问题是如何产生的?怎样解决? 知识拓展~几种编码方式的认识 ASCIIAmerican Standa...
    dengpan阅读 451评论 0 0
  • 一.网页乱码的问题是如何产生的?怎样解决 乱码产生的根本原因就是我们在保存文件时的编码格式和用浏览器解析文件时的解...
    婷楼沐熙阅读 837评论 0 0
  • 1.网页乱码的问题是如何产生的?怎样解决 先认识认识几种编码方式 ASCII 全称美国标准信息交换代码(Ameri...
    饥人谷_任磊阅读 459评论 0 0