CSS
是层叠样式表
(Cascading Style Sheets
)的简称,有时我们也会称之为CSS样式表
或级联样式表
。
CSS也是一种标记语言。
选择器
分为基础选择器
和复合选择器
两大类。
单个选择器
组成的。标签选择器
、类选择器
、id选择器
和通配符选择器
。复合选择器是建立在基础选择器之上,对基础选择器进行组合形成的。
CSS Fonts(字体)属性用于定义字体系列、大小、粗细和文字样式。
链接: https://www.bilibili.com/video/BV14J4114768?p=96.
border: 1px solid red;//没有顺序
border-top: 1px solid red;//只设定上边框
方法一:给table属性加上 border-collapse:collapse
如果盒子本身没有指定
width/height属性,则此时padding不会撑开盒子大小。
方法:直接给其父元素添加text-align:center即可
。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.father {
width: 400px;
height: 400px;
background-color: purple;
margin-top: 50px;
/* 三种方法避免父元素塌陷问题 */
/* border: 1px solid transparent; */
/* padding: 1px; */
overflow: hidden;
}
.son {
width: 200px;
height: 200px;
background-color: pink;
margin-top: 100px;
}
</style>
</head>
<body>
<div class="father">
<div class="son">
</div>
</div>
</body>
</html>
浮动的元素会脱离标准流(脱标)
行内块
元素的特性
链接: https://www.bilibili.com/video/BV14J4114768?p=175.
<div class="box">
<div class="damao">大毛</div>
<div class="ermao">二毛</div>
<div style="clear:both"></div>
</div>
<div class="footer"></div>
.box {
overflow: hidden;
background-color: pink;
}
html:
<div class="box clearfix">
<div class="damao">大毛</div>
<div class="ermao">二毛</div>
</div>
<div class="footer"></div>
style:
.clearfix:after {
content: "";
display: block;
height: 0;
clear: both;
visibility: hidden;
}
.clearfix {
/* IE6、7专有 */
*zoom: 1
}
html:
<div class="box clearfix">
<div class="damao">大毛</div>
<div class="ermao">二毛</div>
</div>
<div class="footer"></div>
style:
.clearfix:before,
.clearfix:after {
content: "";
display: table;
}
.clearfix:after {
clear: both;
}
.clearfix {
*zoom: 1
}
自我理解:
子绝对定位
,不占有位置,可以在最近一级父元素中自由摆放;如果换成相对定位,会占有位置,就不是整个页面都可以摆放的了。
父相对定位
,是因为相对定位占有位置,后面的元素不会受到影响,如果换成绝对定位,不占有位置,那么后面的元素就会跑到父元素的下面。
浮动元素、绝对定位、固定定位元素都不会触发外边距合并的问题。
视频链接: https://www.bilibili.com/video/BV14J4114768?p=190.
视频链接: https://www.bilibili.com/video/BV14J4114768?p=192.
视频链接: https://www.bilibili.com/video/BV14J4114768?p=194.
视频链接: https://www.bilibili.com/video/BV14J4114768?p=253.
视频链接: https://www.bilibili.com/video/BV14J4114768?p=256.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>字体图标</title>
<style>
/* 字体声明 */
@font-face {
font-family: 'icomoon';
src: url('fonts/icomoon.eot?pqwhvl');
src: url('fonts/icomoon.eot?pqwhvl#iefix') format('embedded-opentype'), url('fonts/icomoon.ttf?pqwhvl') format('truetype'), url('fonts/icomoon.woff?pqwhvl') format('woff'), url('fonts/icomoon.svg?pqwhvl#icomoon') format('svg');
font-weight: normal;
font-style: normal;
font-display: block;
}
span {
font-family: 'icomoon';
font-size: 20px;
color: pink;
}
</style>
</head>
<body>
<!-- 字体图标下载
icomoon字库: http://icomoon.io
阿里iconfont字库:http://www.icofont.cn/ -->
<span></span>
<span></span>
</body>
</html>
视频链接: https://www.bilibili.com/video/BV14J4114768?p=257.
视频链接: https://www.bilibili.com/video/BV14J4114768?p=258.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>css 三角制作</title>
<style>
.box1 {
width: 0;
height: 0;
border-top: 100px solid pink;
border-bottom: 100px solid blue;
border-left: 100px solid green;
border-right: 100px solid purple;
}
.box2 {
width: 0;
height: 0;
border: 50px solid transparent;
border-top: 50px solid skyblue;
}
.jd {
position: relative;
width: 120px;
height: 249px;
background-color: pink;
}
.jd span {
position: absolute;
right: 15px;
top: -10px;
width: 0;
height: 0;
/* 照顾兼容性多下面两句 */
font-size: 0;
line-height: 0;
border: 5px solid transparent;
border-bottom: 5px solid pink;
}
</style>
</head>
<body>
<div class="box1"></div>
<hr>
<div class="box2"></div>
<hr>
<div class="jd">
<span></span>
</div>
</body>
</html>
直角三角形:
<style>
.box {
width: 0;
height: 0;
/* 1.值保留右边的边框有颜色 */
border-color: transparent pink transparent transparent;
/* 2.样式都是solid */
border-style: solid;
/* 3.上边框宽度要大,右边框宽度稍小,其余的边框改为0 */
border-width: 100px 50px 0 0;
}
</style>
<div class="box"></div>
input {
outline: none;
}
默认右下角有个小控件可以拖拽文本域,加上resize:none可以去掉那么控件。
textarea {
/* 防止拖拽文本域 */
resize: none;
/* 取消表单轮廓 */
outline: none;
}
div {
width: 150px;
height: 80px;
background-color: pink;
margin: 100px auto;
/* 1.如果文字显示不开也要一行内显示 */
white-space: nowrap;
/* 2.超出的部分隐藏 */
overflow: hidden;
/* 3.文字溢出用省略号显示 */
text-overflow: ellipsis;
}
<!-- 单行溢出省略号显示 -->
<div>啥也不说,此处省略一万字</div>
div {
width: 150px;
height: 65px;
background-color: pink;
margin: 100px auto;
overflow: hidden;
text-overflow: ellipsis;
/* 弹性伸缩盒子模型显示 */
display: -webkit-box;
/* 限制在一个块元素显示的文本的行数 */
-webkit-line-clamp: 3;
/* 设置或检索伸缩盒对象的子元素的排列方式 */
-webkit-box-orient: vertical;
}
<!-- 多行溢出省略号显示 -->
<div>啥也不说,此处省略一万字啥也不说,此处省略一万字啥也不说,此处省略一万字啥也不说,此处省略一万字</div>
ul li {
position: relative;
float: left;
list-style: none;
width: 150px;
height: 200px;
border: 1px solid blue;
/* 1.可以减少边框重叠 */
margin-left: -1px;
}
<body>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
</body>
结果展示:
添加了鼠标经过效果:
a. 父级没有加定位
直接给子元素添加相对定位:
ul li {
float: left;
list-style: none;
width: 150px;
height: 200px;
border: 1px solid blue;
/* 1.可以减少边框重叠 */
margin-left: -1px;
}
ul li:hover {
position: relative;
border: 1px solid pink;
}
b. 父级加了相对定位
,给子元素添加z-index提高当前定位元素的成绩。
ul li {
position: relative;
float: left;
list-style: none;
width: 150px;
height: 200px;
border: 1px solid blue;
/* 1.可以减少边框重叠 */
margin-left: -1px;
}
ul li:hover {
z-index: 1;
border: 1px solid pink;
}
/* 把我们所有标签的内外边距清零 */
* {
margin: 0;
padding: 0
}
/* em 和 i 斜体的文字不倾斜 */
em,
i {
font-style: normal
}
/* 去掉li 的小圆点 */
li {
list-style: none
}
img {
/* border 0 照顾低版本浏览器 如果 图片外面包含了链接会有边框的问题 */
border: 0;
/* 取消图片底侧有空白缝隙的问题 */
vertical-align: middle
}
button {
/* 当我们鼠标经过button 按钮的时候,鼠标变成小手 */
cursor: pointer
}
a {
color: #666;
text-decoration: none
}
a:hover {
color: #c81623
}
button,
input {
/* "\5B8B\4F53" 就是宋体的意思 这样浏览器兼容性比较好 */
font-family: Microsoft YaHei, Heiti SC, tahoma, arial, Hiragino Sans GB, "\5B8B\4F53", sans-serif
}
body {
/* CSS3 抗锯齿形 让文字显示的更加清晰 */
-webkit-font-smoothing: antialiased;
background-color: #fff;
font: 12px/1.5 Microsoft YaHei, Heiti SC, tahoma, arial, Hiragino Sans GB, "\5B8B\4F53", sans-serif;
color: #666
}
.hide,
.none {
display: none
}
/* 清除浮动 */
.clearfix:after {
visibility: hidden;
clear: both;
display: block;
content: ".";
height: 0
}
.clearfix {
*zoom: 1
}