题1:清除浮动(使用after伪类)
请用浮动模型和清除模型的实现下面版面
解
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>EX01</title>
<link rel="stylesheet" href="index.css">
</head>
<body>
<div class="container">
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
</div>
</body>
</html>
index.css
.container {
border:1px solid #333;
width: 280px;
}
.container:after {
content: ".";
height: 0;
visibility: hidden;
display: block;
clear: both;
}
.content {
float: left;
margin: 3px;
background: #eee;
width: 50px;
height: 50px;
}
题2:清除浮动(额外标签法)
请用浮动模型和清除模型的实现下面版面
解
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>EX02</title>
<link rel="stylesheet" href="index.css">
</head>
<body>
<div class="container">
<div class="content first"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<div class="content"></div>
<br style="clear:both;" />
</div>
</body>
</html>
index.css
.container {
border:1px solid #333;
width: 280px;
}
.content {
float: left;
margin: 3px;
background: #eee;
width: 50px;
height: 50px;
}
.content.first {
height: 103px;
width: 103px;
}
题3:使用伪类
请用:before伪元素和:after伪元素的绘制日期输入对象
解
日历图标为从 iconfont 下载的图片
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>EX03</title>
<link rel="stylesheet" href="index.css">
</head>
<body>
<div class="container">
<div class="content">2016-09-12</div>
</div>
</body>
</html>
index.css
.container {
border: 1px solid #eee;
height: 30px;
width: 220px;
}
.content {
margin: 0 10px;
line-height: 30px;
color: #666;
}
.content:before {
content: "开始日期:";
color: #999;
}
.content:after {
content: url(date.png);
color: #999;
margin-left: 5px;
}
题4:对话框
请用:before伪元素和:after伪元素的绘制聊天对话框对象
解
没有弄出来小三角形的小弧度 orz
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>EX04</title>
<link rel="stylesheet" href="index.css">
</head>
<body>
<div class="container"></div>
</body>
</html>
index.css
.container {
background-color: green;
height: 100px;
width: 200px;
border-radius: 10px;
}
.container:after {
content: "";
border-top: 13px solid transparent;
border-left: 20px solid green;
border-bottom: 13px solid transparent;
position: absolute;
left: 200px;
top: 25px;
color: green;
}
补充阅读:(码)
纯CSS实现各类气球泡泡对话框效果
翻译:关于完美圆角实现的研究