李洪强和你一起学习前端之(5)css书写位置 优先级和伪类
亲爱的,时间过得真快,不知不觉我们一起学习前端已经4天了,这4天的时间里,我们是不是收获很大呢,每当我们学习一个新的知识点的时候,每当我们做出一个新的东西来的时候,我们是不是欣喜若狂,世界从来否不会辜负努力的人,每一步都算数,做iOS开发的我,我也能证明自己可以做前端,最近公司让我做前端的页面,一开始是恐惧的,这个我怎么会,但是谁都不是一开始天生就会前端的,这几天我一直没有休息好,前天晚上,为了学习前端,我一直到凌晨的三点点才睡,加上最近一直以来睡不好就头疼的毛病,真的让我吃不消,没有休息好的情况下,昨天上班,真的很累,昨晚上一直学习到凌晨,还好睡了个好觉,现在感觉好多了,我相信: 明天的你,一定会感谢今天努力的你
下面开始今天的学习吧!
1 复习昨天的知识
概念: 层叠样式表或者叫级联样式表
内嵌式写法:
<head>
<style type = "text/css"></style>
</head>
语法:
选择器: {属性:值;}
选择器就是选择标签的一个过程
属性: 赋值 描述
color Color: red; 文字颜色
Font-size Font-size:20px; 文字大小
Font-family font-family:宋体; 文字字体
Font-weight Font-weight:bold(700)| normal; 文字加粗
Font-style Font-style:italic | normal; 文字斜体(italic)
Background-color Backgroundcolor: red; 背景颜色
Width/height Width: 12px; 宽度和高度
Text-align Text-align:center; 文字居中
Text-indent Text-indent:2em; 首行缩进
Margin Margin:0 auto 盒子居中显示
1.1基础选择器
1.1.1标签选择器
P{属性:值;}
类选择器
定义:
.fontcolor{color:red}//一定要前面的点写上
调用:
<p class = "fontcolor">文字</p>
特点:
->谁调用,谁改变
->一个标签可以同时调用多个类样式
->多个标签可以同时调用一个类样式
命名规范:
-> 不推荐使用汉字定义类名
-> 不推荐使用标签名或者属性名定义类名
-> 不能使用纯数字或者特殊字符("_"除外)定义类名
1.1.2id选择器
定义:
#自定义名称{属性: 值;}
调用:
标签通过 id = "自定义名称"
注意:
页面中的表id名称不能重复
同一个标签不能调用多个id样式
1.1.3通配符选择器
*{属性: 值;}
将页面中所有的标签都选中
1.2符合选择器
1.2.1标签指定式选择器
p.类选择器{属性: 值}
既...又(既是...又是标签)
1.2.2后代选择器
选择器 选择器{属性: 值}
//注意: 选择器和选择器之间有空格
标签之间的关系属于嵌套关系,
1.2.3并集选择器
选择器,选择器,选择器{属性: 值}
是并列的关系
p,div{
color: red
}
注意: 标签之间不一定是并列关系! ! ! !
复习一下标签
| 属性 | 赋值 | 描述 |
| color | Color:red | 设置文字颜色 |
| Font-size | Font-size:20px | 设置文字大小 |
| Font-family | Font-family:宋体 | 设置文字字体 |
| Font-weight | Font-weight: 数字/bold(700以上) normal | 设置文字加粗 |
| Font-style | Font-style:italic/normal | 设置文字斜体 |
| background-color | background-color:red | 设置背景颜色 |
| width/height | width:12px | 宽度和高度 |
| Text-align | Text-align:center | 设置文字居中 |
| align:(html的写法) | align = @"center" | 设置表格居中 |
| Text-indent | Text-indent:2em | 设置首行缩进 |
| Margin | Margin:0auto | 让盒子居中显示 |
今天新的内容
2 Css书写位置介绍
2.1 内嵌式写法
2.2外联式写法(通过link标签)
html: 结构
css: 结构
<link rel = "stylesheet" href = "">
新建一个文件,后缀名以.css命名(css文件)
在html页面中通过
<link rel = "stylesheet" href = "">
标签将css文件引入

2.3行内式写法
通过给标签设置style属性来设置样式
最后一个样式后面可以加也可以不加";"
还有没有其他的方法?
2.4Css书写方式之间的区别
内嵌式写法:
代码维护性比较差,没有实现css代码与html结构的完全分离
影响的范围只有当前页面
行内式写法:
代码可以维护性极差,css代码和html结构没有实现分离(写后台的程序的可能会这样写)
影响的范围只有当前标签
外联式写法:
代码可维护性高,css与html结构完全分离
影响范围广,当前整个网页站点
3 HTML标签的分类
根据显示方式不同进行的分类
3.1块级元素(有宽度,有高度)
典型代表
div,p,li,h,l...
特点:
(1) 元素自己独占一行显示(与宽度无关)
(2) 可以设置宽度和高度
(3) 当嵌套一个块级元素,子元素如果不设置宽度,那么该子元素的宽度为父元素的宽度
3.2行内元素
典型代表
Span,a,font,strong
特点:
元素在一行上显示
行内元素不能直接设置宽度和高度
3.3行内块元素
典型代表: image,input(表单控件)
特点:
(1)元素在一行上显示
(2)可以设置宽度和高度
3.4元素之间的转换
Display:inline 将元素转化为行内元素
Display: inline-block 将元素转化为行内块元素
DIsplay:block 将元素转化为块元素
4 Css特性
4.1层特性
样式的覆盖.样式的层叠性与样式的调用顺序没有关系,与样式的定义顺序有关
层叠性发生的前提: 样式冲突

4.2继承性
继承性发生的前提是标签之间属于一种嵌套关系
文字颜色可以实现继承
文字大小可以实现继承
字体可以实现继承
行高可以实现继承
总结: 与文字有关的属性都可以实现继承
特殊性:
<a href = "#"></a> 不能继承父元素中的文字颜色(层叠掉了)
<h1></h1> 标题标签不能继承父元素中的文字大小
4.3优先级
默认样式 < 标签选择器 < 类选择器 < id选择器 < 行内样式
< !important
0 1 10 100 1000
1000以上
4.3.1优先级的特点
继承的权重为0
4.3.2权重会叠加
5 伪类介绍
a:link{
属性: 值
}
超链接默认状态下的样式
a{
}与
a:link{
} 实现的效果是一样的
a:link{
属性: 值;
}
超链接访问过后的样式
a:visited{
属性:值;
}
鼠标放在超链接上的样式
a:hover{
}
超链接激活状态下的样式(点住不放的颜色)
a:active{
}
获取焦点(光标)的时候的样式(跟表单控件配合使用)
a:focus{
}
注意: 以上几个属性必须按照此顺序来写,否则的话设置之后没有效果!

补充属性:(设置超链接下面的横线)
text-decoration
None: 不显示下横线
underline: 显示下横线
line-through: 贯穿线
6 背景(background)
6.1 Background-color
背景颜色
6.2 background-image(背景图片)
注意: 设置背景图片的时候一定要设置宽度和高度

6.3 background-repeat 设置背景平铺
repeat (默认值)
no-repeat (不平铺)
repeat-x (横向平铺)
repeat-y (纵向平铺)
6.4background-position (设置背景位置)
设置具体指: left|right|top|bottom|cneter
设置居中:

设置具体值的时候不区分先后顺序

设置具体数字的时候,第一个值代表水平方向,第二个值代表垂直方向

6.5background-attachment (设置背景是否固定)
Scroll(默认值)滚动
fixed(图片固定)

背景属性联写:
没有数量限制和先后顺序限制
去掉列表前面的显示方式

今天的学习结束了,别忘了好好练习和吸收!
李洪强和你一起学习前端之(5)css书写位置 优先级和伪类的更多相关文章
- 李洪强和你一起学习前端之(6)css行高,盒模型,外边距
李洪强和你一起学习前端之(6)css行高,盒模型,外边距 复习昨天的知识 1.1css书写位置: 内嵌式写法 外联式写法 <link href = "1.css" rel = ...
- 李洪强和你一起学习前端之(3)Css基础和选择器
大家好! 经过了前面的学习,是不是对前端的学习有了初步的了解.虽然我之前有iOS开发的经验,现在接触一门新的语言,对我来说 有一定的优势,但是一门技术对于谁来说都是公平的,我承认,我在接触新知识的时候 ...
- 李洪强和你一起学习前端之(8)CSS复习
今天是2017年3月24日周五 每一天都是余生当中最好的一天,珍惜当下. CSS基础复习 1 复习 1.1Css第一天 css层叠样式表 基础选择器 标签选择器 p{属性: 值;} 类选择器 .自定义 ...
- 李洪强和你一起学习前端之(1)Html基础
1 快捷键的认识(虽然我用的是MAC,但是这里以windows快捷键来讲,但是MAC电脑可以把Ctrl换成command试试) Ctrl + c 复制 Ctrl + v 粘贴 Ctrl + a ...
- 李洪强和你一起学习前端之(9)规避脱标,CSS可见性,滑动门案例
1 复习昨天知识 1.1 浮动 特点: >浮动的元素不占位置(脱标) >可以将行内元素转化为行内块元素 >块级元素在一行上显示 >设置了浮动的元素,影响其后面的元素 作 ...
- 李洪强和你一起学习前端之(7)定位盒子 css可见性 滑动门案例
今天是2017年3月23日 1 复习昨天知识 1.1浮动 Float:left | right 特点: ->浮动的元素不占位置(脱标) ->可以将行内元素转化为行内块元素 ->块级元 ...
- 李洪强和你一起学习前端之(4)HTML5介绍
1.1认识HTML5 html的版本: html4 Xhtml1.0 目前: html5是最高的版本 再怎么变化,无非是多了一些标签而已,但是不单单是提供了一些标签 比如: 开发网页游戏 我们可以开发 ...
- 李洪强iOS经典面试题144-数据存储
李洪强iOS经典面试题144-数据存储 数据存储 sqlite中插入特殊字符的方法和接收到处理方法. 除'其他的都是在特殊字符前面加"/",而 ' -> '' .方法:k ...
- 李洪强iOS经典面试题142-第三方框架及其管理
李洪强iOS经典面试题142-第三方框架及其管理 第三方框架及其管理 使用过CocoaPods吗?它是什么?CocoaPods的原理? CocoaPod是一个第三方库的管理工具,用来管理项目中的第 ...
随机推荐
- 降维工具箱drtool
工具箱下载:http://leelab.googlecode.com/svn/trunk/apps/drtoolbox/ ——————————————————————————————————————— ...
- easyui时间控件设置为可清空——jquery-easyui-1.3.3(这个版本还没有buttons,网上的好多博文都是1.3.5之后的版本)
效果图: 更改的源码jquery.easyui.min.js 11358行: var _858=$("<div class=\"datebox-button\"&g ...
- 扩展 jQuery datebox控件按钮
功能需求: 自定义扩展,将原先的datebox控件按钮进行自定义的扩展: 1.问题: 对原先的时间按钮控件进行更改扩展,新增 “一刻钟” “半小时” “一小时” 选项. 获取原先的 datebox 对 ...
- [Android Pro] 关于BitmapFactory.decodeStream(is)方法无法正常解码为Bitmap对象的解决方法
在android sdk 1.6版本API帮助文档中,其中关于BitmapFactory.decodeFactory.decodeStream(InputStream is)的帮助文档是这么说明的: ...
- http://www.cnblogs.com/alipayhutu/archive/2012/08/16/2643098.html
http://www.cnblogs.com/alipayhutu/archive/2012/08/16/2643098.html
- Neo4J简单了解
1.什么是Neo4j Neo4j是由java实现的开源NOSQL图数据库 数据库分为关系型和非关系型两种类型. 其中非关系型又分为Graph(图形),Document(文档),Cloumn Famil ...
- 手写Json转换
在做项目的时候总是要手动将集合转换成json每次都很麻烦,于是就尝试着写了一个公用的方法,用于转换List to json: using System; using System.Collection ...
- Junit核心——测试类(TestCase)、测试集(TestSuite)、测试运行器(TestRunner)
首先,把这三个定义简单的说明一下: 1.测试类(TestCase):一个包含一个或是多个测试的类,在Junit中就是指的是包含那些带有@Test注解的方法的类,同一样也被称作“测试用例”; 2.测试集 ...
- actor中!(tell)与forward的差别
! 的源代码: def !(message: Any)(implicit sender: ActorRef = Actor.noSender): Unit tell 的源代码: final def t ...
- thinkphp 表名 大小写 窍门
我们有一个表auth_group_access,那么如何使用呢?在使用M方法时,对于带下划线的表名,可以采用如下方法. M('AuthGroupAccess');对应sql语句SQL: SHOW CO ...