CSS介绍
CSS全名叫做层叠样式表(CascadingStyleSheet),对页面的布局、字体、颜色、背景等效果进行精确的控制??梢越饩鰄tml代码对样式定义的重复,提高了后期样式代码的可维护性,并增强了网页的现实效果功能。简单一句话:CSS将网页内容和显示样式进行分离,提高了显示功能。
CSS引入方式
在HTML中引入CSS的方法主要有四种,它们分别是行内式、内嵌式、链接式和导入式。
1.行内式
行内式是在标记的style属性中设定CSS样式。这种方式没有体现出CSS的优势,不推荐使用。
2.内嵌式
嵌入式是将CSS样式集中写在网页的标签对的标签对中。格式如下:...此处写CSS样式缺点是对于一个包含很多网页的网站,在每个网页中使用嵌入式,进行修改样式时非常麻烦。单一网页可以考虑使用嵌入式。
3.导入式
将一个独立的.css文件引入HTML文件中,导入式使用CSS规则引入外部CSS文件,标记也是写在标记中,使用的语法如下:@import"mystyle.css"; 此处要注意.css文件的路径导入式会在整个网页装载完后再装载CSS文件,因此这就导致了一个问题,如果网页比较大则会儿出现先显示无样式的页面,闪烁一下之后,再出现网页的样式。这是导入式固有的一个缺陷。
4.链接式
也是将一个.css文件引入到HTML文件中,但它与导入式不同的是链接式使用HTML规则引入外部CSS文件,它在网页的标签对中使用标记来引入外部样式表文件,使用语法如下:使用链接式时与导入式不同的是它会以网页文件主体装载前装载CSS文件,因此显示出来的网页从一开始就是带样式的效果的,它不会象导入式那样先显示无样式的网页,然后再显示有样式的网页,这是链接式的优点。总结:一般来说,做网站时把样式多写在多个样式表文件中,因此我们先用链接式引入一个总的CSS文件,然后在这个CSS文件中在使用导入式来引入其他的CSS文件。但如果通过JavaScrip来动态引入CSS文件则只能使用链接式。
link与@import:
link属于html标签,而@import是css提供的。
页面被加载时,link会同时被加载,而@import引用的css会等到页面加载结束后加载。
link是html标签,因此没有兼容性,而@import只有IE5以上才能识别。
link方式样式的权重高于@import的。
文件路径
css/a.css 相对路径:当前文件夹下的css文件夹内的a.css文件。
./css/a.css 相对路径:同上。
css 相对路径:当前文件夹下的b.css文件
../imgs/a.png 相对路径:上级文件夹下的imgs文件夹内的a.css文件。
/User/hunger/project/css/a.css 绝对路径:本地绝对路径中的a.css文件。
/static/css/a.css 网站中的绝对路径。
[http://cdn.jirengu.com/kejian1/8-1.png](http://cdn.jirengu.com/kejian1/8-1.png)网站中的路径 指向网络上的一个图片。
在js.jirengu.com上展示一个图片
如果图片在本机,那么先把图片上传到服务器的某个目录下,然后用相对路径去引用;
如果图片在其他网站上,那么可以用img标签来引用(绝对路径)。
html和 css 的书写规范
文档类型声明及编码: 统一为html5声明类型; 编码统一为, 书写时利用IDE实现层次分明的缩进。
非特殊情况下样式文件必须外链至…之间;非特殊情况下JavaScript文件必须外链至页面底部。
语义化html和css。
书写链接地址时, 必须避免重定向,例如:href=”http://itaolun.com/”, 即须在URL地址后面加上“/”。
给区块代码及重要功能(比如循环)加上注释, 方便后台添加功能。
尽可能减少div嵌套。
class与id的使用: id是唯一的并是父级的, class是可以重复的并是子级的, 所以id仅使用在大的??樯? class可用在重复使用率高及子级中; id原则上都是由我分发框架文件时命名的, 为JavaScript预留钩子的除外,为JavaScript预留钩子的命名, 请以 js_ 起始, 比如: js_hide, js_show。
书写代码前, 考虑并提高样式重复使用率;充分利用html自身属性及样式继承原理减少代码量。
chrome 开发者工具的功能区概述
Elements:查看当前页面的元素
Console:记录开发者开发过程中的日志信息,且可以作为与JS进行交互的命令行Shell
Sources: 用于对JS进行断电调试
Network: 从发起网页页面请求Request后分析HTTP请求后得到的各个请求资源信息(包括状态、资源类型、大小、所用时间等),可以根据这个进行网络性能优化
Timeline: 记录并分析在网站的生命周期内所发生的各类事件,以此可以提高网页的运行时间的性能
Profiles: 如果你需要Timeline所能提供的更多信息时,可以尝试一下Profiles,比如记录JS CPU执行时间细节、显示JS对象和相关的DOM节点的内存消耗、记录内存的分配细节
Application: 记录网站加载的所有资源信息,包括存储数据(Local Storage、Session Storage、IndexedDB、Web SQL、Cookies)、缓存数据、字体、图片、脚本、样式表等
Security: 判断当前网页是否安全
Audits: 对当前网页进行网络利用情况、网页性能方面的诊断,并给出一些优化建议