CSS基础

作者: 尾巴尾巴尾巴 | 来源:发表于2017-06-19 14:14 被阅读0次
  • CSS全称层叠样式表(Cascading Style Sheets)

CSS的几种引入方式

  1. 行间样式(写在html标签的style属性里)
    <input type="text" style="color:#ccc;width:120px">

  2. 内部样式(写在<head></head>里面,以<style>...</style>标签包裹。比)
    <!doctype html>
    <html>
    <head>
    <meta charset=“utf-8”>
    <style>
    p {
    font-size: 20px
    }
    </style>
    </head>
    <body>
    <p>你好!</p>
    </body>
    </html>

  3. 外部样式:也称链接样式,写在<head></head>里面。以link定义,(rel="stylesheet"和tbye="text/css"为规范必写,详细原因现在的我也不知道), css样式写在另一个文件夹取名为style(文件名可以随便取但推荐是英文)。比如:
    <link rel="stylesheet" type="text/css">

  4. @import 引用CSS(放在<style></style>之间)

    <style type="text/css">
       @import url(引入的样式表的路径);
    </style>
    

link 和@import的区别

链接方式(下面用 link 代替)和导入方式(下面用 @import 代替)都是引入外部的 CSS 文件的方式,下面我们来比较这两种方式,并且说明为什么不推荐使用 @import。

  • 差别1:ink属于HTML标签,而@import完全是CSS提供的一种方式。
    link标签除了可以加载CSS外,还可以做很多其它的事情,比如定义RSS,定义rel连接属性等,@import就只能加载CSS了。
  • 差别2:加载顺序的差别。当一个页面被加载的时候(就是被浏览者浏览的时候),link引用的CSS会同时被加载,而@import引用的CSS会等到页面全部被下载完才被加载。所以有时候浏览@import加载CSS的页面时开始会没有样式(就是闪烁),网速慢的时候还挺明显。
  • 差别3:兼容性的差别。由于@import是CSS2.1提出的,所以低版本浏览器不支持,@import只有在IE5以上的才能识别,而link标签无此问题。
  • 差别4:使用dom控制样式时的差别。当使用javascript控制dom去改变样式的时候,只能使用link标签,因为@import不是dom可以控制的。
    从上面的分析来看,还是使用link标签比较好。

以下这几种文件路径分别用在什么地方,代表什么意思?

css/a.css 相对路径:当前文件夹内CSS目录下的a.css文件
./css/a.css 相对路径:当前文件夹内CSS目录下的a.css文件
b.css 相对路径:当前目录下的b.css文件
../imgs/a.png 相对路径:当前目录的上级目录内的images目录下的a.png文件
/Users/hunger/project/css/a.css 绝对路径:本地/Users/hunger/project/css/目录下的 a.css文件
/static/css/a.css 网站路径:当前服务器根目录下的/static/css的a.css文件
http://cdn.jirengu.com/kejian1/8-1.png 网络路径:通过该路径可以找到cdn.jirengu.com域名下kejian1目录下的8-1.png文件

如果我想在js.jirengu.com上展示一个图片,需要怎么操作?

  1. 可以直接将图片上传到服务器,在页面使用这张图片
  2. 如果这个图片本来就存在网络上其他的服务器上,可以直接使用图片的网络绝对路径链接的方式在页面上添加url引用这张图片

HTML和 CSS的书写规范

HTML:
  1. 标签名必须使用小写字母。
  2. 对于无需自闭合的标签,不允许自闭合。
  3. 对 HTML5 中规定允许省略的闭合标签,不允许省略闭合标签。
  4. 一次缩进2个空格,不要使用 tab 或者混合 tab 和空格的缩进。
  5. class 必须单词全字母小写,单词间以 - 分隔。
  6. 标签的使用应该遵循标签的语义。
  7. 标签的使用应尽量简洁,减少不必要的标签。
  8. 属性值必须用双引号包围。
  9. 布尔类型的属性,建议不添加属性值。
  10. 引入 CSS 时必须指明 rel="stylesheet"。

下面是常见标签语义

  • p - 段落
  • h1,h2,h3,h4,h5,h6 - 层级标题
  • strong,em - 强调
  • ins - 插入
  • del - 删除
  • abbr - 缩写
  • code - 代码标识
  • cite - 引述来源作品的标题
  • q - 引用
  • blockquote - 一段或长篇引用
  • ul - 无序列表
  • ol - 有序列表
  • dl,dt,dd - 定义列表
CSS
  1. 选择器与 { 之间必须包含空格。
  2. 属性名与之后的 : 之间不允许包含空格, : 与 属性值 之间必须包含空格。
  3. 在可以使用缩写的情况下,尽量使用属性缩写。
  4. 属性书写顺序
    建议同一rule-set下的属性在书写时应按功能进行分组,并以Formatting Model(布局方式、位置) > Box Model(尺寸) > Typographic(文本相关) > Visual(视觉效果)的顺序书写,以提高代码的可读性。
  5. 数值为0时不带单位
  6. 复合样式使用缩写
  7. 统一使用小写

注释:

  • Formatting Model 相关属性包括:position / top / right / bottom / left / float / display / overflow 等
  • Box Model 相关属性包括:border / margin / padding / width / height 等
  • Typographic 相关属性包括:font / line-height / text-align / word-wrap 等
  • Visual 相关属性包括:background / color / transition / list-style 等

截图介绍 chrome 开发者工具的功能区

相关文章

网友评论

    本文标题:CSS基础

    本文链接:https://www.haomeiwen.com/subject/tszyqxtx.html