css知识点
一、盒模型知识
border:
边框
- border-边框的宽度
- border-color:边框的颜色
- border-style:边框的线型
- border-top:上边框
- border-bottom:下边框
- border-left:左边框
- border-right:右边框
padding:
代表边框内壁与内部元素之间的距离
-
padding:10px;代表上下左右都是10px
-
padding:1px 2px 3px 4px;上右下左
-
padding:1px 2px;上下/左右
-
padding:1px 2px 3px; 上/左右/下
-
padding-top:单独设置
margin:
代表边框外壁与其他元素之间的距离
-
margin:10px;代表上下左右都是10px
-
margin:1px 2px 3px 4px;上右下左
-
margin:1px 2px;上下/左右
-
margin:1px 2px 3px;上/左右/下
-
margin-top:单独设置
二、css选择器
选择器的优先级:id>class>元素
1、基本选择器
(1)元素选择器
语法:html标签名{css属性}
示例:
<span>hello css!!!</span>
<style type="text/css">
span{color:red;font-size:100px; }
</style>
(2)id选择器 id唯一性
语法:#id的值{css属性}
示例:
<div id="div1">hello css1!!!</div>
<div id="div2">hello css2!!!</div>
<style type="text/css">
#div1{background-color: red;}
#div2{background-color: pink;}
</style>
(3)class选择器
语法:.class的值{css属性}
示例:
<div class="style1">div1</div>
<div class="style1">div2</div>
<div class="style2">div3</div>
<style type="text/css">
.style1{background-color: red}
.style2{background-color: pink}
</style>
2、属性选择器(a、input、p...)
语法:基本选择器[属性=‘属性值’]{css属性}
示例:
<form action="">
name:<input type="text" /><br/>
pass:<input type="password" /><br/>
</form>
<style type="text/css">
input[type='text']{background-color: yellow}
input[type='password']{background-color: pink}
</style>
3、伪元素选择器 (a:link、hover、active、visited)###
a标签的伪元素选择器
语法:
- 静止状态 a:link{css属性}
- 悬浮状态 a:hover{css属性}
- 触发状态 a:active{css属性}
- 完成状态 a:visited{css属性}
示例:
<a href="#">点击我吧</a>
<style type="text/css">
a:link{color:blue}
a:hover{color:red}
a:active{color:yellow}
a:visited{color:green}
</style>
4、层级选择器(#d1 .dd2 span)
语法:父级选择器 子级选择器 .....
示例:
<div id="d1">
<div class="dd1">
<span>span1-1</span>
</div>
<div class="dd2">
<span>span1-2</span>
</div>
</div>
<div id="d2">
<div class="dd1">
<span>span1-1</span>
</div>
<div class="dd2">
<span>span1-2</span>
</div>
</div>
<style type="text/css">
#d1 .dd2 span{color:red}
</style>
5.伪类与 CSS 类###
语法
伪类的语法:
selector : pseudo-class {property: value}CSS 类也可与伪类搭配使用。
selector.class : pseudo-class {property: value}
a.red : visited {color: #FF0000}
<a class="red" href="css_syntax.asp">CSS Syntax</a>
假如上面的例子中的链接被访问过,那么它将显示为红色。
6.子元素选择器
语法:
语法 父级选择器>子级选择器(中间用 “ > ”连接
如果您不希望选择任意的后代元素,而是希望缩小范围,只选择某个元素的子元素,请使用子元素选择器(Child selector)。
h1 > strong {color:red;}
这个规则会把紧跟 h1 下面的 strong 元素变为红色
选择相邻兄弟(h1+p)
语法: 标签+标签
用一个结合符只能选择两个相邻兄弟中的第二个元素
如果需要选择紧接在另一个元素后的元素,而且二者有相同的父元素,可以使用相邻兄弟选择器(Adjacent sibling selector)。
例如,如果要增加紧接在 h1 元素后出现的段落的上边距,可以这样写:
h1 + p {margin-top:50px;}这个选择器读作:“选择紧接在 h1 元素后出现的段落,h1 和 p 元素拥有共同的父元素”。
锚伪类
在支持 CSS 的浏览器中,链接的不同状态都可以不同的方式显示,这些状态包括:活动状态,已被访问状态,未被访问状态,和鼠标悬停状态。
- a:link {color: #FF0000} /* 未访问的链接 */
- a:visited {color: #00FF00} /* 已访问的链接 */
- a:hover {color: #FF00FF} /* 鼠标移动到链接上 */
- a:active {color: #0000FF} /* 选定的链接 */
提示:在 CSS 定义中,a:hover 必须被置于 a:link 和 a:visited 之后,才是有效的。
提示:在 CSS 定义中,a:active 必须被置于 a:hover 之后,才是有效的。
提示:伪类名称对大小写不敏感。
标签:first-child 伪类
您可以使用 :first-child 伪类来选择元素的第一个子元素。这个特定伪类很容易遭到误解,所以有必要举例来说明。考虑以下标记:
<div>
<p>These are the necessary steps:</p>
<ul>
<li>Intert Key</li>
<li>Turn key <strong>clockwise</strong></li>
<li>Push accelerator</li>
</ul>
<p>Do <em>not</em> push the brake at the same time as the accelerator.</p>
</div>
伪类 第一个元素 first-child 或者nth-child(1)
其他: a:not(:first-child)
三、css属性
1、文字属性
- font-size:大小
- font-family:字体类型
2、文本属性
- color:颜色
- line-height:行高
- text-decoration :文本装饰
属性值
- none
- underline 会对元素加下划线
- overline
- line-through
- blink
属性值:none underline
- text-align:对齐方式
属性值:left center right
<div>hello css!!!</div>
<a href="#">click me!!!</a>
<style type="text/css">
div{color:red;text-decoration: underline;text-align: right }
a{text-decoration: none;}
</style>
- text-indent:文本缩进
所有元素的第一行都可以缩进一个给定的长度,甚至该长度可以是负值。
text-indent 还可以设置为负值。利用这种技术,可以实现很多有趣的效果,比如“悬挂缩进”,即第一行悬挂在元素中余下部分的左边:
3、背景属性
- background:简写属性
属性值: 颜色 url 平铺方式 移动位置(left top)
- background-color:背景颜色
- background-image:背景图片
属性值:url("图片地址");
- background-repeat:平铺方式
属性值:默认横向纵向平铺
-
repeat:横向纵向平铺
-
no-repeat:不平铺
-
repeat-y:纵向
-
repeat-x:横向
body{ background-color: black; background-image: url("images/dog.gif"); background-repeat: repeat-y; }
注意:
如果文档比较长,那么当文档向下滚动时,背景图像也会随之滚动。当文档滚动到超过图像的位置时,图像就会消失。
您可以通过 background-attachment 属性防止这种滚动。通过这个属性,可以声明图像相对于可视区是固定的(fixed),因此不会受到滚动的影响:
body
{
background-image:url(/i/eg_bg_02.gif);
background-repeat:no-repeat;
background-attachment:fixed
}
CSS 背景属性
属性 描述
- background 简写属性,作用是将背景属性设置在一个声明中。
- background-attachment 背景图像是否固定或者随着页面的其余部分滚动。
- background-color 设置元素的背景颜色。
- background-image 把图像设置为背景。
- background-position 设置背景图像的起始位置。
- background-repeat 设置背景图像是否及如何重复。
4、列表属性
- list-style-type:列表项前的小标志
属性值:太多了
无序列表时:none: 无标记
disc:实心圆,为默认的
circle:空心圆
square:实心方块
有序列表时
none: 无标记
decimal:数字(1,2,3)默认lower-roman:小写罗马数字
upper-roman:大写罗马数字
- list-style-image:列表项前的小图片
属性值:url("图片地址");
<ul>
<li>程序员</li>
<li>程序员</li>
<li>程序员</li>
<li>程序员</li>
</ul>
<style type="text/css">
/* ul{list-style-type: decimal-leading-zero;} */
ul{list-style-image: url("images/forward.gif");}
</style>
5、尺寸属性
-
宽度
-
height:高度
<div id="d1">div1</div> <div id="d2">div2</div> <style type="text/css"> #d1{background-color: red; 200px;height: 200px;} #d2{background-color: pink; 200px;height: 200px;} </style>
6、表格属性
- border-collapse :折叠边框
属性设置是否将表格边框折叠为单一边框
- text-align 和 vertical-align 属性设置表格中文本的对齐方式。
text-align 属性设置水平对齐方式,比如左对齐、右对齐或者居中:
vertical-align 属性设置垂直对齐方式,比如顶部对齐、底部对齐或居中对齐
CSS Table 属性
属性 描述
border-collapse 设置是否把表格边框合并为单一的边框。
border-spacing 设置分隔单元格边框的距离。
caption-side 设置表格标题的位置。
empty-cells 设置是否显示表格中的空单元格。
table-layout 设置显示单元、行和列的算法。
table
{
border-collapse:collapse;
}
7、鼠标属性(cursor)
cursor属性定义了鼠标指针的放在一个元素边界范围内时所用的光标形状
属性值
- default
- pointer
- crosshair
- text
- wait
- help等
8、显示属性
- display:
属性值:
- none:隐藏
block:块级显示
inline:行级显示
<form action="">
name:<input id="name" type="text" /><span id="span">对不起 输入不符合要求</span>
<br>
pass:<input id="pass" type="password" />
<br>
<input id="btn" type="button" value="button" />
</form>
<style type="text/css">
span{color:red;display: none}
</style>
<script type="text/javascript">
document.getElementById("btn").onclick = function(){
document.getElementById("span").style.display = "inline";
};
</script>
9、浮动属性
float:
属性值:
- left
- right
clear:清除浮动 left right both
缺点 :
- (1)影响相邻元素不能正常显示
- (2)影响父元素不能正常显示