每天一句:你想人前显贵,必得背后受罪。
一、服务器相关
1、服务器的分类:
- 远程服务器(ip地址):
- 别名:外网服务器、正式服务器;
- 使用阶段:应用上线后使用的服务器;
- 使用人群:供所有用户使用;
- 速度:服务器的性能以及用户的网速;
- 本地服务器(局域网):
- 别名:内网服务器、测试服务器;
- 使用阶段:应用处于开发、测试阶段使用的服务器;
- 使用人群:只提供公司内部的开发人员、测试人员使用;
- 速度:局域网,速度快,有助于提高开发测试效率;
2、服务器的搭建:
例如LAMP:Linux(unix) + Apache(阿帕奇服务器) + MySQL(数据库) + PHP(脚本语言)/Java/NodeJS
3、URL全称uniform resource locator(统一资源定位符):
URL基本格式 = 协议://主机地址(IP或域名):端口号/路径
例如:
http :// www.bmob.cn /
http :// www.ifanr.com / 817369
http :// 127.0.0.1 : 8020 / 1704/03-CSS/html/03-test.html
二、样式表
1、内部样式表(嵌套到页面中)
语法:
<style type="text/css">
/** css语句*/
</style>
- 注意:
- 每个CSS样式由两部分组成,即选择符和声明,声明又分属性和属性值;
- 属性必须放在花括号中,属性与属性值用冒号连接;
- 属性和属性值,组成的叫做声明;
- 一个属性可以有多个属性值;
- 属性和属性之间没有顺序区分;
- 每个声明用’;’分号结束;
- 书写样式过程中,空格、换行等操作都不会影响到属性的显示;
- 例如:
div{ width:300px; height:300px; background:purple; }
2、内联样式(行间样式,行内样式,嵌入式样式)
语法:
<div style="属性1:值1;属性2:值2;属性3:值3;……">
</div>
3、外部样式表
语法1(常用方式):
<link href="目标文件的路径及文件名全称" rel="stylesheet" type="text/css" />
使用link元素导入外部样式表时,需将该元素写在文档头部,即<head>与</head>之间:
rel:用于定义文档关联,表示关联样式表;
type:定义文档类型;
例如:
<link href="css/style.css" type="text/css" rel="stylesheet" />
语法2:
<style type="text/css">
// css提供的方式
@import url("目标文件的路径及文件名全称");
</style>
说明:@和import之间没有空格 url和小括号之间也没有空格;括号内部加引号(也可以不用),必须结尾以分号结束;
例如:
<style type="text/css">
@import url("css/style.css");
</style>
4、扩展(link和import导入外部样式的区别)
- 差别1:老祖宗的差别:link属于XHTML标签,而@import完全是CSS提供的一种方式。 link标签除了可以加载CSS外,还可以做很多其它的事情,比如定义RSS,定义rel连接属性等,@import就只能加载CSS;
- 差别2:加载顺序的差别:当一个页面被加载的时候(就是被浏览者浏览的时候),link引用的CSS会同时被加载,而@import引用的CSS 会等到页面全部被下载完再被加载。所以有时候浏览@import加载CSS的页面时开始会没有样式;
- 差别3:兼容性的差别。@import是CSS2.1提出的,所以老的浏览器不支持,@import只在IE5以上的才能识别,而link标签无此问题;
- 差别4:DOM控制样式时的差别(DOM操作):当使用javascript控制DOM去改变样式的时候,只能使用link标签,因为@import不是dom可以控制的;
5、备注
- 内联样式表的优先级别最高【有属性冲突时才涉及到优先级,如果没有属性冲突,属性即叠加】;
- 内部样式表与外部样式表的优先级和书写的顺序有关,后书写的优先级别高;
三、选择符
1、类型选择符(标记选择器)
语法: 标签名称 {属性:属性值;}
例如: div{width:30px;}
类型选择符说明:
> 类型选择符就是以文档对象类型的元素作为选择符,即使用结构中元素名称作为选择符。例如body、div、p、img、em、strong、span......等;
> 所有的页面元素都可以作为选择符;
用法:
> 如果想改变某个元素得默认样式时,可以使用类型选择符;(如: 改变一个p段落样式);
> 当统一文档某个元素的显示效果时,可以使用类型选择符;(如: 改变文档所有p段落样式);
2、类别选择符(class选择器)
语法: .class名{属性:属性值;}
说明:
> 当我们使用类选择符时,应先为每个元素定义一个类名称
> 类选择符的语法格式:
如: <div class="top"></div>
用法: class选择符更适合定义一类样式
3、ID选择符(id选择器)
语法: #id名{属性:属性值;}
说明:
> 可以给每个元素使用id选择符,但id是元素的唯一标识符,不可出现重复的id名;
如: <div id="top"></div>
> id选择符的语法格式是“#”加上自定义的id名
如: #box{width:300px; height:300px;}
> 起名时要取英文名,不能用关键字;(所有的标记和属性都是关键字)
如: head标记
> 一个id名称只能在文档中出现一次,因为id是唯一的
> 最大的用处: 创建网页的外围结构
4、包含选择符(后代选择器)
语法: 选择符1 选择符2{属性:属性值;}
选择符父级 选择符子级{属性:属性值;}
说明: 选择符1和选择符2用空格隔开,含义就是选择符1中包含的所有选择符2;
5、群组选择符(集合选择器)
语法: 选择符1,选择符2,选择符3{属性:属性值;}
说明: 当有多个选择符应用相同的样式时,可以将选择符用“,”分隔的方式,合并为一组;
做页面居中设置(元素居中): 选择符{margin:0 auto;}
6、伪类选择符(注意顺序)
a:link {color: #FF0000} 未访问的链接
a:visited {color: #00FF00} 已访问的链接
a:hover {color: #FF00FF} 鼠标移动到链接上
a:active {color: #0000FF} 选定的链接
说明:
> 当这4个超链接伪类选择符联合使用时,应注意他们的顺序,正常顺序为:
a,a:link,a:visited,a:hover,a:active,错误的顺序有时会使超链接的样式失效;
> 为了简化代码,可以把伪类选择符中相同的声明提出来放在a选择符中;
例如:a{color:red;} a:hover{color:green;} 表示超链接的三种状态都相同,只有鼠标划过变颜色。
7、通配符: *
语法: *{属性:属性值;}
说明: 通配选择符的写法是“*”,其含义就是所有元素;表示该样式适用所有网页元素;
用法: 常用来重置样式
四、选择符权重
权重规则:HTML标签的权重是1,class的权重是10,id的权重是100。
权重的表达方式如:0,0,0,0;
类型选择符的权重为0001
class选择符的权重为0010
id选择符的权重为0100
伪类选择符的权重为0010
包含选择符的权重:为包含选择符的权重之和
内联样式的权重为1000
继承样式的权重为0000
群组集合权重为他本身
子选择符的权重为0000 // 后续学习
属性选择符的权重为0010 // 后续学习
伪元素选择符的权重为0010 // 后续学习
备注:
样式加不上去(样式无效): 1、语法是否有错; 2、是否找对元素; 3、权重不够;