前端三件套之CSS(一)

学习完HTML,接下来我们来学习CSS,那么什么是CSS呢?

(1)CSS 简介
CSS 概念
CSS Cascading Style Sheets )层叠样式表,又叫级联样式表,简称样式表
CSS 文件后缀名为 .css
CSS 用于 HTML 文档中元素样式的定义
为什么需要 CSS
使用 css 的目的就是让网页具有美观一致的页面
CSS HTML 之间的关系
1 HTML 用于构建网页的结构
2 CSS 用于构建 HTML 元素的样式
3 HTML 是页面的内容组成, CSS 是页面的表现
语法
CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明

选择器通常是您需要改变样式的 HTML 元素每条声明由一个属性和一个值组成
属性( property )是您希望设置的样式属性( style attribute )。每 个属性有一个值。属性和值被冒号分开
<style>
    h1{
        color: blue;
        font-size: 12px;
   }
</style>
(2)CSS 的引入方式
内联样式(行内样式)
要使用内联样式,你需要在相关的标签内使用样式( style )属性。Style 属性可以包含任何 CSS 属性
温馨提示
缺乏整体性和规划性,不利于维护,维护成本高
<p style="background: orange; font-size:24px;">CSS<p>
内部样式
当单个文档需要特殊的样式时,就应该使用内部样式表。你可以使用 <style> 标签在文档头部定义内部样式表
温馨提示
单个页面内的 CSS 代码具有统一性和规划性,便于维护,但是在多个页面之间容易混乱
<head>
    <style>
       h1 {
           background: red;
       }
    </style>
</head>
外部样式(推荐)
当样式需要应用于很多页面时,外部样式表将是理想的选择。在使用外部样式表的情况下,你可以通过改变一个文件来改变整个站点的外观。每个页面使用 <link> 标签链接到样式表。 <link> 标签在 (文档的)头部
<link rel="stylesheet" type="text/css"href="xxx.css">
导入式(了解)
此种方式使用率比较低 , 因为会影响加载速度
<style type="text/css">
   @import url("css文件路径");
</style>
@import link 的区别
@import CSS 提供加载样式的一种方式,只能用于加载 CSS link 标签除了可以加载 CSS 外,还可以做很多其它的事情,比如定义 rel 连接属性等
加载顺序的差别。当一个页面被加载的时候, link 引用的 CSS 会同时被加载, @import 引用的
CSS 会等到页面全部被下载完再被加载。所以有时候浏览 @import 加载 CSS 的页面时开始会没 有样式(就是闪烁),网速慢的时候会比较明显
兼容性的差别。 @import IE5 以上才能识别,而 link 标签无此问题
使用 dom 控制样式时的差别。当使用 javascript 控制 dom 去改变样式的时候,只能使用 link 标 签,因为 dom 操作元素的样式时,用 @import 方式的样式也许还未加载完成
  使用 @import 方式会增 HTTP 请求,会影响加载速度,所以谨慎使用该方法
(3)CSS 样式表特征
继承性
指被包含在内部的标签可以拥有外部标签的样式,比如: text- font- line-height ,但有些属性不能继承,比如: border 、 padding、 margin
层叠性
简单的说,层叠就是对一个元素多次设置同一个样式,这将使用最后一次设置的属性值。例如对一个站点中的多个页面使用了同一套CSS样式表,而某些页面中的某些元素想使用其他样式,就可以针对这些样式单独定义一个样式表应用到页面中。这些后来定义的样式将对前面的样式设置进行重写,在浏览器中看到的将是最后面设置的样式效果
优先级
样式定义冲突时,按照不同样式规则的优先级来应用样式
行内样式> 内部样式(外部样式)
内部样式和外部样式优先级一样,写在后面的生效
CSS 注释
注释是用来解释你的代码,并且可以随意编辑它,浏览器会忽略它
CSS 注释以 /* 开始 , */ 结束
/* 这是注释 */
(4)基础选择器一
全局选择器
可以与任何元素匹配,优先级最低,不推荐使用
*{
     margin: 0;
     padding: 0;
 }
元素选择器
HTML 文档中的元素, p、b、div、a、img、body 等。标签选择器,选择的是页面上所有这种类型的标签,所以经常描述“共性 ,无法描述某一个元素的 个性
p{
    font-size:14px;
}
再比如说,我想让 学完前端,继续学 Java” 这句话中的 前端 两个变 为红色字体,那么我可以用 <span> 标签把 前端 这两个字围起来,然后给 <span> 标签加一个标签选择器
<p>学完了<span>前端</span>,继续学Java</p>
span{
 color: red;
}
温馨提示
1 所有的标签,都可以是选择器。比如 ul li label dt dl input div
2 无论这个标签藏的多深,一定能够被选择上
3 选择的所有,而不是一个
类选择器
规定用圆点 . 来定义,针对你想要的所有标签使用
<h2 class="oneclass">你好</h2>
/*定义类选择器*/
.oneclass{
 width:800px;
}
class 属性的特点
1 类选择器可以被多种标签使用
2 类名不能以数字开头
3 同一个标签可以使用多个类选择器。用空格隔开
<h3 class="classone classtwo">我是一个h3啊</h3>
<h3 class="teshu" class="zhongyao">我是一个h3啊</h3> // 错误
(5)基础选择器二
ID 选择器
针对某一个特定的标签来使用,只能使用一次。 css 中的 ID选择器 # 来定义
<h2 id="mytitle">你好</h2>
#mytitle{
   border:3px dashed green;
}
特别强调
1 ID 是唯一的
2 ID 不能以数字开头
合并选择器
语法: 选择器1,选择器2,...{ }
作用:提取共同的样式,减少重复代码
.header, .footer{
    height:300px;
}
选择器的优先级
CSS , 权重用数字衡量
元素选择器的权重为 : 1
class 选择器的权重为 : 10
id 选择器的权重为 : 100
内联样式的权重为 : 1000
优先级从高到低 : 行内样式 > ID 选择器 > 类选择器 > 元素选择器
(6)DIV+CSS 布局
优点
1 符合 W3C 标准
2 使页面载入得更快
3 保持视觉的一致性
4 修改设计时更有效率
5 搜索引擎友好
布局时常用的属性
属性
描述
width
宽度
height
高度
background-color
背景颜色
float
浮动( div 不在独占一行,左右摆放)
布局 - 上中下结构
<div class="header"></div>
<div class="content"></div>
<div class="footer"></div>

 

 <style>
.header {
height: 100px;
background-color: #fcc;
}
6
.content {
  height: 400px;
  background-color: #ff9;
 }
.footer {
    height: 100px;
    background-color: #ccf;
}
 </style>
布局 - 上中下 - 左右
<div class="container">
<div class="header"></div>
<div class="nav"></div>
<div class="content">
<div class="left"></div>
<div class="center"></div>
<div class="right"></div>
</div>
<div class="footer"></div>
</div>

 

<style>
.header {
 width: 100%;
 height: 100px;
 background-color: red;
}
.nav {
 width: 100%;
 height: 50px;
 background-color: pink;
}
.content {
    width:100%;
    height: 300px;
    background-color: yellow;
}
.footer {
    width: 100%;
    height: 150px;
    background-color: deepskyblue;
}
.left {
    width: 33.33%;
    height: 300px;
    background-color: palegoldenrod;
    float: left;
}
.center {
    width: 33.33%;
    height: 300px;
    background-color: palegreen;
    float: left;
}
.right {
    width: 33.33%;
    height: 300px;
    background-color: palevioletred;
    float: left;
}
</style>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端菜鸟 阿皮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值