一、CSS入门
CSS是Cascading Style Sheets(层叠样式表)几个英文单词的缩写。
网页设计面临的问题:
1、显示格式设置功能薄弱、设置麻烦。
2、页面显示风格很难达到统一。
3、冗余的格式设定太多。
CSS优点:
1、提供了丰富的显示格式设置功能,极大弥补了HTML显示的不足。
2、实现了显示内容与显示格式设置的分离,使显示格式设置实现重用。
3、容易使页面形成统一的风格。
4、提供了一些滤镜功能。
学习CSS的目标:
1、掌握CSS的书写语法。
2、能够使用工具编写的CSS。
3、能够读懂CSS并能够修改现有的CSS。
怎样学习CSS:
1、分类记忆常用CSS元素。
2、熟练使用网页编写工具,大量使用工具编写CSS和HTML。
二、CSS的几种设置方式
分类:
内联样式表、嵌入样式表、外部样式表、输入样式表
内联样式表:设置HTML文本标签的style属性的方法称为内联样式表。
优点:能够对特定的标签的显示样式进行精确设定。
缺点:需要对每一样标签进行反复设定,而且网页修改的工作量太大。
嵌入样式表:放在HTML的<style></style>标签之间,对各类网页元素的样式规则进行定义
<style type="text/css" media="screen,projection">
<!--
P{FONT-SIZE:20PT;COLOR:BLUE;FONT-FAMILY:宋体;TEXT-DECORATION:underline}
-->
</style>
优点:能够使整个页的显示风格达到统一,而不需重复设置。
外部样式表:把样式规则的定义单独放在一个扩展名为.css的文件中。在相应的HTML页面中引入.CSS文件
引入CSS文件的语法:
<link rel="StyleSheet" href="test.css" type="text/css" media="screen">
其中的rel和href是必须的。
优点:能够使达到整个网站样式重用的目的,实现网页的瘦身,统一网站风格。
输入样式表:使用CSS的@import声明将外部的样式表输入到另外一个CSS文件或HTML文件中。
源CSS文件中的样式定义规则就目标CSS文件的一部分
<style type=text/css media ="screan">
<!--
@import url(http://www.gohy.net/js/style.css);
@import url(http:./stylesheet/style.css);
p{background:yellow;color:black}
-->
</style>
这里要注意CSS样式表的输入顺序和定义顺序,因为后输入的(定义的)将会覆盖先输入的同标记的样式。
三、样式规则的选择器
主要有三种类型选择器:HTML选择器,class选择器,ID选择器。另外还有在此三个选择器基础之上扩展的其它选择器。
HTML选择器:就是HTML标签。
如果将某个HTML标签定义成了选择器,那么CSS应用的网页中,所有的这个HTML标签都按照相应的样式规则来显示。
P{FONT-SIZE:20PT;COLOR:BLUE;FONT-FAMILY:宋体;TEXT-DECORATION:underline}
这就是个标签选择器,网页中所有的P标签都按照这个样式显示。
class选择器:如果想对相同的标签采用几种不同的显示样式的话,那就要设置标签的class属性,来对标签进行分类。
如:
<p>段落一</p>
<p class="warning">段落二</p>
<p class="stop">段落三</p>
样式表定义:
<style>
<!--
p{color:blue}
.warning{color:green};
p.warning{color:yellow}
p.stop{color:red};
-->
</style>
ID选择器:ID也是标签的一个可选属性。通常是class定义一组有共同显示格式的HTML元素,而ID定义某一个特定的HTML元素。
<span id="one">text here</span>
<style>
<!--
#one{Color:yellow}
-->
</style>
关联选择器:用一个空格工或更多的单一选择器组成的字符串。
P H1{background:yellow}
它表示所有<p></p>中的<H1>标签中的文本是黄色显示,而不在<p></p>标记中的H1正常显示
组合选择器的优先级高到单一选择器的优先级。
组合选择器:为了减少样式表的重复声明,如果几个标签的样式一样的话,可以把多个选择器写在同一行,用“,”隔开。
h1,h2,h3,h4,h5,h6,TD{color:red}
这样上面定义的所有的标签的色彩都是红色。
伪元素选择器:
目前常用的伪选择器:
A:active 选中超链接时的状态
A:hover 光标移动到超链接上的状态
A:link 超链接正常显示的状态
A:Visited 访问过的超链接的状态
P:first-line 段落中的第一行文本
P:first-letter 段落中的第一个字母
四、样式表的注释与有效范围
注释:/*要注释的内容*/
样式规则的继承:嵌套在某个HTML标签中的HTML标签一般会继承外层标签设置样式规则。
样式规则的优先级:
ID选择器>Class选择器>HTML标签选择器
内联样式表>嵌入样式表>链接样式表
五、样式属性详解
字体:
font-family:用于设置字体系列,可以设置多个字体系列,每一个字体系列用逗号隔开。
font-size:定义字体的大小。
绝对大小:xx-small,x-small,small,medium,large,x-large,xx-large
相对大小:larger,smaller比当前字体大一号或小一号
数字度量:
px:像素数
mm,cm,in:毫米,厘米,英寸
pt:磅
em:当前字体大小的比例。
%:和当前字体大小的百分比。
font-style:字体样式normal,italic等。
text-decoration:给文字设置下划线(underline),上划线(overline),中划线(line-througn)等
font-weight:粗体的磅值,normal,bold,bolder,lighter,100,200,300,400,500,600,700,800,900
text-transform:将样式区字母大小写转换capitalize(首字母大写),uppercase(全部大写),lowercase(全部小写),none(不转换)。
color:文本色彩
font:字体的各种属性一起定义
背景:
background-color:设置元素的背景色。
background-image:背景图片
background-repeat:背景图象如何重复repeat(平铺),repeat-x(x方向平铺),repeat-y(y方向平铺)
background-attachment:背景图象是否和内容一起滚动。fix(固定背景),scroll(图像内容一起动)
background-position:指定图片的位置。left,center,right,top,center,bottom
background:将各种背景属性放在一起。
文本:
word-spacing:字间距。
letter-spacing:单词的字母间距。
vertical-align:文本的竖直对齐方式。sub,super,top,middle,bottom
text-align:文本的水平对齐方式。left,right,center,justify(两端对齐)
text-indent:设置文本的第一行的缩进值,负值将文本第一行外拉。
line-height:文本所在行的行高。
位置:
position:对象的定位方式。absolute,relative.
绝对定位能精确定位元素在页面的独立位置,而不考虑页面上其他元素的定位设置。
相对定位设置元素通常应在的位置的偏移量。
left,top,width,height,z-index
布局:
visibility:设定元素的可见状态。inherit(继承父层的可见状态),visible(显示),hidden(隐)
display:元素的显示状态。block(前后都有换行),inline(前后不换行),list-item(与block一样,但增加了列表项),none(不显示元素)
visibility=hidden和display=none都不显示元素,只是前者仍要占有位置。
clip:定义绝对定位的元素的可视区域。其余的位置作透明处理
clip:rect(top,right,bottom,left)
overflow:设置元素中的内容超 出了元素大小时如何处理。
visible:增加元素的显示空间,从而将元素的所有内容显示出来。
hidden:保持元素的显示大小不变,剪去超出显示空间的内容。
scroll:显是显示滚动条。
auto:只有在内容超出元素的显示大小时才显示滚动条。
float:定义网页中的其他文本如何环绕该元素。left,right,none
page-break-before:设置打印该元素前否强制分页。
page-break-after:设置打印该元素后是否强制分页。
边缘:
margin:设置元素边界与其它元素之间的空隙大小。margin-top,margin-right,margin-bottom,margin-left,margin(top,right,bottom,left)
padding:设置元素边界与内部内容之间的空隙大小。padding-top,padding-right,padding-left,padding(top,right,bottom,left)
width:设置边框宽度(thin,medium,thick)。
border-top-width,border-right-width,border-bottom-width,border-left-width,border-width
color:设置元素边框色彩。
border-top-color,border-right-color,border-bottom-color,border-left-color,border-color
style:设置元素边框样式。
border-top-style,border-right-style,border-bottom-style,border-left-style,border-style
另外上面的内容可以按照边框(宽度,式样,色彩)来书写
border-top,border-right,border-bottom,border-left,border
列表:
list-style-type:disc空心圆,square方块,decimal阿拉伯数字,lower-roman小写罗马数字,upper-roman大写罗马数字,lower-alpha小写英文,upper-alpha大写英文,none无项目符号
list-style-image:设置作为项目列表的图像
list-style-position:列表项的标记显示在文本内还是文本外。
其它:
cursor:设置鼠标移到元素上的形状。
filter:设置滤镜效果。
CSS滤镜:
CSS提供了一些内置的多媒体滤镜特效,产生特殊的视觉特效。滤镜仅对有边界区域(表格,图片)起作用,类似于<p>这种没有边界的区域是不能直接使用滤镜的,当把这些元素设置了width和height后就变成有边界的区域,就可以使用滤镜了。
下面讲解一下filter属性的各个参数和对应的滤镜效果。
Alpha参数:设置一个元素的透明度。
Alpha(Opacity= ,FinishOpacity= Style= StartX= ,StartY= FinishX= FinishY= )
Opacity:透明度级别。0-100,0-完全透明,100-完全不透明。
Blur参数:设置模糊效果。
Blur(Add= ,Direction= ,Strength= )
Add:是否是单向模糊。true,false
Direction设置模糊方向。应为45的整数倍,0代表竖直向上,按顺时针方向旋转。
Strength代表有多少像素受模糊影响,默认是5个。
DropShadow参数:建立阴影效果,需要设置几个参数
DropShadow(Color= ,OffX= ,OffY= ,Positive= )
Color:指定阴影色
OffX,OffY:指定阴影在水平和竖直方向的偏移量。
Positive:true建立外阴影,false建立内阴影。
FlipH参数:将元素水平反转,不用设置子参数。
FlipV参数:将元素竖直反转,不用设置子参数。
Glow参数:使字体边缘产生发光的效果
Glow(Color= ,Strength= )
Color发光色
Strength发光强度
Gray参数:去掉彩色,变成灰度图像
Invert参数:图片的底片效果。
Wave参数:实现波纹效果
Wave(Add= ,Freq= ,LightStrength= ,Phase= ,Strength= )
Add设置是否扭曲0-不扭曲,非0扭曲。
Freq设置完整波纹个数
LightStrength设置波浪的起始角。0-100
Strength:设置波浪的摇摆幅度。