3 CSS 定位&浮动&水平对齐&组合选择符&伪类&伪元素
CSS Position(定位):元素的定位与文档流无关
static定位:
HTML元素的默认值, 没有定位,元素出现在正常的流中
静态定位的元素不会受到top,bottom,left,right影响
Fixed定位:
元素的位置相对于浏览器窗口固定
即便串口滚动元素也不滚动
注:
- Fixed 定位在 IE7 和 IE8 下需要描述 !DOCTYPE 才能支持
- Fixed定位使元素的位置与文档流无关,因此不占据空间
- Fixed定位的元素和其他元素重叠。
p.pos_fixed
{
position:fixed;
top:30px;
right:5px;
}
Relative定位:
相对定位元素的定位是相对其正常位置,常被用于绝对定位元素的容器块

Absolute定位:
绝对定位的元素相对于最近的已定位父元素,如果没有已定位的父元素,那么它的位置相对于<.html>
position:absolute;
注:
- absolutely定位使元素的位置与文档流无关,因此不占空间
- absolutely定位的元素和其他元素重叠
重叠的元素:
- 元素的定位与文档流无关,所以它们可以覆盖页面上的其他元素
- z-index属性指定了一个元素的堆叠顺序(哪个在前哪个在后)
- 一个元素可以有整数或者负数的堆叠顺序

CSS float:
- css float属性定义元素在哪个方向浮动,浮动元素会生成一个块级框,直到该块级框的外边缘碰到包含框或者其他的浮动框为止
- 如果一个元素水平浮动,则只能左右移动不能上下移动
- 如果图像是右浮动,下面的文本流将环绕在它左边
- 浮动之后的元素将围绕它,浮动之前的元素不受影响
- 几个浮动的元素放在一起,如果空间足够会彼此相邻,空间受到窗口影响
清除浮动:
- 在样式表中定义:clear:both。元素两侧不会出现浮动
- 清除浮动之后,周围的元素会重新排列
CSS 水平对齐:
块元素占用了全宽,前后都是换行符
中心对齐,使用margin属性:
margin属性可任意拆分为左,右页边距设置自动指定,结果都是出现居中元素
.center
{
margin-left:auto;
margin-right:auto;
width:70%;
background-color:#b0e0e6;
}
使用position属性设置左,右对齐
.right
{
position:absolute;
right:0px;
width:300px;
}
使用float属性设置左,右对齐
- 当使用浮动属性对齐,总是包括!DOCTYPE声明!如果丢失,它将会在IE浏览器产生奇怪的结果
.right
{
float:right;
width:300px;
background-color:#b0e0e6;
}
使用Padding设置垂直居中对齐
.center {
padding: 70px 0;
border: 3px solid green;
text-align: center;
}
在CSS3中包含了种组合方式:
- 后代选择器(空格分隔)
- 子元素选择器(大于号分割)
- 相邻兄弟选择器(加号分割)
- 普通兄弟选择器(波浪号分割)
后代选择器:
后代选取器匹配所有指定元素的后代元素
div p
{
background-color:yellow;
}
子元素选择器:
div>p
{
background-color:yellow;
}
相邻兄弟选择器:
- 选择紧接在另一元素后的元素,且二者有相同父元素
div+p
{
background-color:yellow;
}
普通相邻兄弟选择器:
- 选取所有指定元素的相邻兄弟元素
选取了所有 <div> 元素之后的所有相邻兄弟元素 <p> :
div~p
{
background-color:yellow;
}
CSS伪类:
- CSS伪类用来添加一些选择器的特殊效果
- 由于状态的变化是非静态的,所以元素达到一个特定状态时,它可能得到一个伪类的样式。当状态改变时,它又会失去这个样式(例如链接在被点击时和被点击之后)
- 伪类是基于文档之外的抽象
伪类语法:
- selector:pseudo-class {property:value;}
- selector.class:pseudo-class {property:value;}
- 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 之后,才是有效的。
- 注意:伪类的名称不区分大小写。
伪类和CSS类配合使用:
a.red:visited {color:#FF0000;}
<a class="red" href="css-syntax.html">CSS Syntax</a>

CSS 伪元素:
- 伪元素添加一些选择器的特殊效果
- 伪元素和元素控制的内容没有差别,但因为是元素的抽象,所以不存在与文档中,所以被称为伪元素
语法:
- selector:pseudo-element {property:value;}
- selector.class:pseudo-element {property:value;}(用于CSS类)
:firs-line伪元素与:first-letter伪元素的异同:
- 两者都作用于块级元素
- first-line作用于首行
- first-letter作用于首个字母
first-before伪元素与first-after伪元素:
- ":before" 伪元素可以在元素的内容前面插入新内容
- ":after" 伪元素可以在元素的内容之后插入新内容
h1:before
{
content:url(smiley.gif);
} h1:after
{
content:url(smiley.gif);
}

3 CSS 定位&浮动&水平对齐&组合选择符&伪类&伪元素的更多相关文章
- CSS3——对齐 组合选择符 伪类 伪元素 导航栏 下拉菜单
水平&垂直对齐 元素居中对齐 .center { margin: auto; width: 50%; border: 3px solid green; padding: 10px; } 文本 ...
- java:CSS(定位,组合选择符,边距,Float,Table的样式,显示和隐藏,换行,盒子模型,iframe和frameset框架)
1.绝对定位,相对定位,fixed定位(指浏览器窗口定位): <!DOCTYPE html> <html> <head> <meta charset=&quo ...
- CSS 组合选择符
CSS 组合选择符 组合选择符说明了两个选择器直接的关系. CSS组合选择符包括各种简单选择符的组合方式. 在 CSS3 中包含了四种组合方式: 后代选取器(以空格分隔) 子元素选择器(以大于号分隔) ...
- CSS:CSS 组合选择符
ylbtech-CSS:CSS 组合选择符 1.返回顶部 1. CSS 组合选择符 CSS 组合选择符 组合选择符说明了两个选择器直接的关系. CSS组合选择符包括各种简单选择符的组合方式. 在 CS ...
- CSS组合选择符
组合选择符说明了两个选择器直接的关系. 目录: 后代选取器(以空格分隔) 子元素选择器(以大于号分隔) 相邻兄弟选择器(以加号分隔) 普通兄弟选择器(以破折号分隔) 后代选取器 后代选取器匹配所有值得 ...
- CSS和html如何结合起来——选择符及优先级
1.选择符 兼容性 统配选择符 * 元素选择符 body 类选择符 .class id选择符 #id 包含原则符 p strong (所有 ...
- 【代码笔记】Web-CSS-CSS组合选择符
一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- CSS第二天总结 更多的选择符
CSS的选择符非常多,今天继续总结后面的选择符 1.id和class选择符某些情况下我们用关系选择符或者伪类选择符无法选中一些元素时,我们可以给这些元素起 个名字或者分类,这就是id和class属性. ...
- 说说ID选择符、类选择符和HTML标记选择符的优先级顺序
ID选择符.类选择符和HTML标记选择符三者之间的优先级顺序是:ID选择符>类选择符>HTML标记选择符,但是可以用!important提升优先权. 如: p{color:#f ...
随机推荐
- GEE引擎假人系统自定义教程
现如今传奇游戏玩家数量日渐减少.为了给服务器增加人气,很多GM在服务端中增加了自动登录和自动打怪的假人系统.由于该系统登录的假人可以自动练功,自动攻城和实现简单的对话.完全可以做到以假乱真的地步!所以 ...
- RocketMq-粪发涂墙1.0
角色 说明 Producer 生产者,用于将消息发送到RocketMQ,生产者本身既可以是生成消息,也可以对外提供接口,由外部来调用接口,再由生产者将受到的消息发送给MQ. Consumer 消费者, ...
- 国际化支持、activity生命周期、屏幕翻转的ui适配
国际化 对于手机的不同语言做出不同的语言描述,这里只是简单的提一下,实际上针对比较大型的项目,有可能不同的语言要做不同的ui适配. 例如下面:中文长度不长但是在德语中占据很长的位置,这个就要针对性的适 ...
- web应用程序上传文件 超过了最大请求长度
具体问题如下图 具体问题描述:在web应用程序中,上传了200M的文件,出现了如上图的问题,上传较小文件的时候,没有任何的问题.但是,测试的能力,不容小觑,真真的会测试的很全面.测试到了这个问题,好吧 ...
- 中国大学MOOC 邮箱验证的问题
在使用 中国大学 MOOC 过程中,在PC端修改个人资料时,其中有项“常用邮箱”,于是写了QQ邮箱,结果发现一直无法验证,连邮件都无法收到. 经过多番尝试,重新使用邮箱注册的方式注册账号,然后注册成功 ...
- 再有人问你HashMap,把这篇文章甩给他!
声明:本文以jdk1.8为主! 搞定HashMap 作为一个Java从业者,面试的时候肯定会被问到过HashMap,因为对于HashMap来说,可以说是Java==集合中的精髓==了,如果你觉得自己对 ...
- 事件和方法的区别,以input框的blur事件为例
1. 我们在原生的js中学到的事件 onblur 2. 使input框失去焦点的方法blur 3. jquery中的方法blur 是当input框失去焦点时触发的回调 三者是不相同的 事件:指的是一个 ...
- TensorFlow:谷歌图像识别网络inception-v3下载与查看结构
学习博客: # https://www.cnblogs.com/felixwang2/p/9190731.html # https://www.cnblogs.com/felixwang2/p/919 ...
- dubbo-admin监控台的搭建
一.dubbo-admin dubbo-admin是dubbo的控制台web程序,可以利用浏览器对dubbo进行性能监控.服务治理.降级.分组以及一些参数的设置.2.6版本及以前打包后是一个war包, ...
- spring+mybatis报Cannot load JDBC driver
今天做用maven搭建ssm框架的例子,在测试的时候一直报ava.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver 这个异常,找 ...