前端的一些基础知识

1.HTML,XML和XHTML之间的区别

  • html(Hypertext Marked Language 超文本标记语言)是一种用来制作超文本文档的简单标记语言,语法较为松散,不严格的web语言。
  • xml(EXtensible Markup Language 可扩展标记语言)被设计用来传输和储存数据,这点相较于html就不同,html是设计用来展现数据的,他们的设计目的就不同。
  • xhtml(EXtensible HyperText Markup Language 可扩展超文本标签语言)是更严格更纯净的 HTML 代码,是作为一种 XML 应用被重新定义的 HTML。

2.html语义化

html语义化就是选择合适的标签,使用合理的代码结构来书写的你的html文档,这样不管是对于开发者还是浏览器的爬虫都能做到更好的阅读。做到html语义化至少有一下好处:

  1. 在没有CSS样式的时候能够清晰的看出网页的结构,增强可读性
  2. 有利于SEO,有利于搜索引擎爬虫更好的理解我们的网页,从而获取更多的有效信息,提升网页的权重
  3. 便于团队开发和维护,语义化的HTML可以让开发者更容易的看明白,从而提高团队的效率和协调能力
  4. 支持多终端设备的浏览器渲染。PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(通常是因为这些设备对CSS的支持较弱),使用语义化可以确保这些设备以一种有意义的方式来渲染网页。

至于怎么做到语义化,这一点我们在初学html标签的时候就会被告知某一标签是干什么什么用的,比如h1~h6就是标题,那么在我们书写html文档的时候当需要写标题的时候就需要用h1~h6标签,虽说无意义的div标签也可以做到和h1~h6标签一样的效果,但是这样就不符合语义化的标准了。

3.内容与样式分离的原则

内容与样式、行为分离原则主要有一下要求:

  • 写 HTML 的时候先不管样式, 重点放在HTML的结构和语义化上,让 HTML 能体现页面结构或者内容,之后再去写样式。
  • 写 JS 的时候,尽量不要用 JS 去直接操作样式,而是通过给元素添加删除class来控制样式变化。
  • HTML 内不允许出现属性样式,尽量不要出现行内样式。

这样做的好处是:

  • 提高代码的重用性,减少冗余代码,提高开发速度
  • 是代码结构一目了然,不至于你中有我,我中有你,这样不利于以后的维护,其实也是对html语义化的体现

4.常见的meta标签

<meta charset="utf-8"> 设置页面使用的字符集
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 这个标签的具体含义是如果是ie内核的浏览器就用ie的最新标准去渲染页面,是chrome内核的浏览器就用chrome去渲染页面
<meta name="keywords" content="meta 前端 基础"> 设置页面的关键词
<meta name="discription" content="这个页面主要介绍了一些前端基础知识"> 设置页面的描述
<meta name="author" content="leocz"> 表明页面的作者
<meta name="viewport" content="width=device-width,user-scalable=no,initial-scale=1,maximum-scale=1"> 这是移动端页面最常见的一个meta标签属性,具体参数详情如下:

  • width=device-width 页面宽度等于设备宽度
  • user-scalable=no 是否允许用户缩放,no代表不允许,yes表示允许
  • maximum-scale=1 最大缩放比例
  • minimum-scale=1 最小缩放比例

5.文档声明的作用,严格模式与混杂模式,<!doctype html>的作用

  • 网页顶部的文档声明是让浏览器进入正确呈现模式的关键,浏览器自动切换到恰当的呈现模式,以便正确显示由文档声明所指定的文档种类。
  • 严格模式,又称标准模式,是指浏览器按照 W3C 标准解析代码;而混杂模式则是一种向后兼容的解析方法,浏览器选择自己的渲染模式。
  • <!doctype html>就是一种文档声明,告诉浏览器该文档是html5文档,用html5的标准来解析和渲染当前页面

6.浏览器乱码

浏览器在解析页面的时候会根据页面中的<meta charset="xxx> 来选择解码模式,而我们在写好html文档的保存的时候,也会有保存的编码格式选项,乱摸的产生就是浏览器选择的解码方式与我们保存html文档是的编码方式不同,这才导致了乱码。解决方式就是在文档中正确的表明保存时所用的编码方式,以便浏览器能够选择正确的解码方式。

7.常见的浏览器及其内核

| 浏览器名称 | 内核
|---
| chrome,Safari | Webkit
| firfox | Gecko
|ie | Trident
|opera | Blink
其他一些国内的浏览器比如360 搜狗 猎豹等双核浏览器一般都是chrome和ie双核

8.常见标签及其使用场景

| 标签名 | 使用场景
|---
| h1~h6 | 定义标题
| p |定义段落
| form | 定义表单
| input | 定义输入控件
| textarea | 定义多行文本输入控件
| button | 定义按钮
| select | 定义选择列表
| option | 定义选择列表中的选项
| ul | 定义无序列表
| ol | 定义有序列表
| li | 定义列表中的项
| dl | 定义定义列表
| dt | 定义定义列表中的项目标题
| dd | 定义定义列表中项目的描述
| img | 定义图片
| a | 定义链接
| div | 无意义,在前面定义都不适用的时使用,块级元素
| span | 无意义,行内元素
| br | 换行
| hr | 水平线

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,683评论 1 92
  • 源自SeeYouBug博客 地址为:http://www.cnblogs.com/SeeYouBug 一、HTML...
    欲泪成雪阅读 4,977评论 0 15
  • 什么是html? html是一种网页标记语言,叫超文本标记语言,我们平时上网所看到的所有网页均来自于html,英文...
    波段顶底阅读 12,646评论 2 7
  • 夏天的池塘,是我们孩子的乐园。浑身嗮的黝黑发亮,个个像个欢快的小鸭子,划水,游泳,一个潜入又在很远的地方露出了头,...
    永无休止阅读 1,423评论 0 2
  • 我第一次听到鱼的记忆只有7秒的说法,是看港片《岁月神偷》时,当时对话的两人是一对小年轻儿,女生因为觉得鱼缸里的鱼只...
    胃疼的吗丁啉阅读 3,255评论 0 0