CSS 基础入门

CSS

引言:学习前端基础知识。第二课 CSS 基础知识。

时间:2017年11月22日

作者:JustDo23

html_css_js

01. 基础知识

  1. CSS 是用来为结构化文档添加样式的一种计算机语言。
    • Cascading Style Sheets层叠样式表
    • CSS 最主要的目的是将文件的内容和显示分隔开来
    • CSS 可以外部引用复用性强提高工作效率
    • CSS 可以静态修饰网页同时可以配合脚本动态格式化网页
    • 层叠 就是对一个元素多次设置同一个样式最终使用最后一次设置的属性值。

02. 样式语法

  1. 简单代码

    <!DOCTYPE html>
    <html>
    
    <head>
      <title>前端入门CSS</title>
      <meta charset="utf-8">
      <!-- CSS样式 -->
      <style type="text/css">
        p {
          font-size: 16px;/*设置文字字号*/
          color: black;/*设置文字颜色*/
          font-weight: bold;/*设置字体加粗*/
        }
    
        span {
          color: blue;
        }
      </style>
    </head>
    
    <body>
      <p>这是一个段落。<span>单独强调。</span></p>
    </body>
    
    </html>
    
  2. CSS 样式由选择符声明组成,而声明又由属性组成。

    css_grammar
    • 选择符:又称选择器指明网页中要应用样式规则的元素
    • 声明:被大花括号包裹,属性与值之间用冒号分隔,多条属性用分号分隔。

03. 插入位置

  1. 内联式

    <body>
      <!-- 内联式 -->
      <p style="color:green;font-size:12px">这里使用内联式。</p>
    </body>
    
    • css 直接写在 HTML 标签中
  2. 嵌入式

    <head>
      <!-- 嵌入式 -->
      <style type="text/css">
        span { color: blue; }
      </style>
    </head>
    
    • 嵌入式必须写在<style></style>之间
    • 嵌入式一般写在<head></head>之间
  3. 外部式

    <head>
      <!-- 外部式 -->
      <link rel="stylesheet" type="text/css" href="/css/master.css">
    </head>
    
    • 属性href指定外部样式文件
    • 外部样式文件扩展名.css
    • 外部文件中直接指定样式
    span { font-size: 12px; }
    
  4. 优先级

    • 就近原则即离被设置元素越近优先级越高
    • 一般情况下,权值相同 内联式 > 嵌入式 > 外部式

04. 选择器

<head>
  <style type="text/css">
    /*标签选择器*/
    span { color: blue; }

    /*类选择器*/
    .className { color: pink; }

    /*ID选择器*/
    #idName { color: pink; }

    /*子选择器*/
    .firstGeneration>span {
      border: 1px solid red;/*边框及颜色*/
    }

    /*后代选择器*/
    .allGeneration span { border: 1px solid red; }

    /*通用选择器*/
    * { color: black; }

    /*伪类选择器*/
    a:hover { color: blue; }

    /*分组选择器*/
    .groupOne,.groupTwo { border: 1px solid red; }
  </style>
</head>

<body>
  <span>标签选择器。</span>
  <p class="className">类选择器。</p>
  <p id="idName">ID选择器。</p>
  <p class="firstGeneration">子选择器。<span>第一代应用。<span>其他代不应用。</span></span>
  </p>
  <p class="allGeneration">后代选择器。<span>第一代应用。<span>其他代同样应用。</span></span>
  </p>
  <a href="#">伪类选择器。鼠标滑过触发。</a>
  <div class="groupOne">分组选择器。<span class="groupTwo">同一组使用同一颜色</span></div>
</body>
  • 属性 ID唯一的所以ID选择器只能在文档中使用一次
  • 属性 class 可以同时指定多个类名用空格分隔。
  • 伪类选择器可以为标签的某种状态设置样式。兼容性差。
css_selector

05. 特性

  1. 继承性:有些属性可以继承;有些属性不会被继承。

  2. 特殊性:权值

    • 标签 的权值为 1
    • 选择符的权值为 10
    • ID 选择符的权值最高为 100
    p{color:red;} /*权值为1*/
    p span{color:green;} /*权值为1+1=2*/
    .warning{color:white;} /*权值为10*/
    p span.warning{color:purple;} /*权值为1+1+10=12*/
    #footer .note p{color:yellow;} /*权值为100+10+1=111*/
    
  3. 层叠性相同权值情况下,后设置样式覆盖前设置样式,就近原则。

  4. 重要性: 使用 !important 语句将权值提升至最高

06. 文字排版

<head>
  <style type="text/css">
    p {
      font-family: "Microsoft Yahei";/*字体*/
      font-size: 16px;/*字号*/
      color: #FF553E;/*颜色*/
      font-weight: bold;/*加粗*/
      font-style: italic;/*斜体*/
      text-decoration: underline;/*下划线*/
      text-decoration: line-through;/*删除线*/
      text-indent: 2em;/*段首缩进*/
      line-height: 2em;/*行间距*/
      letter-spacing: 20px;/*汉字或字母间距*/
      word-spacing: 50px;/*单词与单词间距*/
      text-align: center;/*块元素中内容居中*/
    }
  </style>
</head>
  • 2em 的意思就是文字的2倍大小。

07. 元素分类

  1. 分类

    • 块状元素
      • 每个块级元素都从新的一行开始,并且其后的元素也另起一行
      • 元素的宽度高度行高以及顶和底边距可以设置
      • 默认情况下元素宽度父容器宽度相同
    • 内联元素也称为行内元素
      • 和其他元素在同一行
      • 元素的宽度高度以及顶和底边距不可设置
      • 元素的宽度是包裹内容的宽度,不可改变
    • 内联块状元素
      • 同时具备块级元素和内联元素的特点。
      • 和其他元素在同一行。
      • 元素的宽度和高度和行高以及顶和底边距可以设置。
  2. 改变

    • 属性 display:block 将元素设置为块级元素
    • 属性 display:inline 将元素设置为行内元素
    • 属性 display:inline-block 将元素设置为内联块状元素

08. 盒模型

[图片上传失败...(image-1c1fa7-1520935055978)]

<head>
  <style type="text/css">
    /*边框设置*/
    div {
      border-width: 2px;/*边框宽度*/
      border-style: dashed;/*虚线*/
      border-color: red;
    }

    /*边框设置简写*/
    p {
      border: 2px dashed blue;
    }

    li {
      width: 200px;/*内容宽度*/
      height: 300px;/*内容高度*/
      border: 1px solid red;
      padding: 20px;/*上右下左内边距*/
      margin: 10px 10px 10px 10px;/*上右下左外边距*/
    }
  </style>
</head>
  • 元素内容和边框之间的内间距,称为填充
  • 元素与元素之间的外间距,称为边界
  • 元素整体占位宽度 marginLeft + paddingLeft + width + paddingLeft + marginRight

09. 小结

  • 层叠样式表语法结构 , 插入位置 , 选择器 , 元素分类
  • 盒模型
  • 继续学 CSS 基础进阶

10. 参考

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