课程盒子的伪类
来源:3-9 作业题
soso_crazy
2019-03-08 21:47:21
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>less3-9</title>
<link rel="stylesheet" href="less3-9作业.css" type="text/css">
</head>
<body>
<header class="header">
<div class="logo"></div>
<nav class="nav">
<a href="#" class="nav__item">课程</a>
<a href="#" class="nav__item nav__item-icon-new">职业路径</a>
<a href="#" class="nav__item">实战</a>
<a href="#" class="nav__item">猿问</a>
<a href="#" class="nav__item">手记</a>
</nav>
<div class="profile">
<a href="#" class="profile_item profile_shoppingBag"></a>
<a href="#" class="profile_item profile_bell"></a>
<a href="#" class="profile_item profile_user"></a>
</div>
<div class="search">
<input type="text" class="search_input">
<a href="" class="search_submit"></a>
</div>
</header>
<div class="banner"></div>
<div class="recommend">
<div class="recommend-course">
<div class="recommend-course__cover"><img src="素材/course1.jpg" alt=""></div>
<div class="recommend-course__plan">
<h2 class="caption">前端小白入门系列课程</h2>
<div class="recommend-course__times">33课<span class="recommend-course__preson">368人在学</span></div>
</div>
<div class="recommend-course__price"><i>¥</i>499.00</div>
</div>
<div class="recommend-course">
<div class="recommend-course__cover"><img src="素材/course2.jpg" alt=""></div>
<div class="recommend-course__plan">
<h2 class="caption">HTML5与CSS3实现动态网页</h2>
<div class="recommend-course__times">24课<span class="recommend-course__preson">1031人在学</span></div>
</div>
<div class="recommend-course__price"><i>¥</i>599.00</div>
</div>
<div class="recommend-course">
<div class="recommend-course__cover"><img src="素材/course3.jpg" alt=""></div>
<div class="recommend-course__plan">
<h2 class="caption">PHP从零基础到原生项目开发系列</h2>
<div class="recommend-course__times">18课<span class="recommend-course__preson">110人在学</span></div>
</div>
<div class="recommend-course__price"><i>¥</i>498.00</div>
</div>
<div class="recommend-course">
<div class="recommend-course__cover"><img src="素材/course4.jpg" alt=""></div>
<div class="recommend-course__plan">
<h2 class="caption">前端小白入门系列课程</h2>
<div class="recommend-course__times">33课<span class="recommend-course__preson">368人在学</span></div>
</div>
<div class="recommend-course__price"><i>¥</i>499.00</div>
</div>
<div class="recommend-course">
<div class="recommend-course__cover"><img src="素材/course5.jpg" alt=""></div>
<div class="recommend-course__plan">
<h2 class="caption">前端小白入门系列课程</h2>
<div class="recommend-course__times">33课<span class="recommend-course__preson">368人在学</span></div>
</div>
<div class="recommend-course__price"><i>¥</i>499.00</div>
</div>
<div class="recommend-course">
<div class="recommend-course__cover"><img src="素材/course6.jpg" alt=""></div>
<div class="recommend-course__plan">
<h2 class="caption">前端小白入门系列课程</h2>
<div class="recommend-course__times">33课<span class="recommend-course__preson">368人在学</span></div>
</div>
<div class="recommend-course__price"><i>¥</i>499.00</div>
</div>
<div class="recommend-course">
<div class="recommend-course__cover"><img src="素材/course7.jpg" alt=""></div>
<div class="recommend-course__plan">
<h2 class="caption">Android网路与数据存储系列</h2>
<div class="recommend-course__times">33课<span class="recommend-course__preson">368人在学</span></div>
</div>
<div class="recommend-course__price"><i>¥</i>299.00</div>
</div>
<div class="recommend-course">
<div class="recommend-course__cover"><img src="素材/course8.jpg" alt=""></div>
<div class="recommend-course__plan">
<h2 class="caption">Java基础语法与常用工具</h2>
<div class="recommend-course__times">33课<span class="recommend-course__preson">368人在学</span></div>
</div>
<div class="recommend-course__price"><i>¥</i>299.00</div>
</div>
<div class="recommend-course">
<div class="recommend-course__cover"><img src="素材/course9.jpg" alt=""></div>
<div class="recommend-course__plan">
<h2 class="caption">iOS基础语法</h2>
<div class="recommend-course__times">33课<span class="recommend-course__preson">368人在学</span></div>
</div>
<div class="recommend-course__price"><i>¥</i>499.00</div>
</div>
</div>
<footer class="footer">
<div class="footer-link">
<a href="" class="footer-link__item">网站首页</a>
<a href="" class="footer-link__item">企业合作</a>
<a href="" class="footer-link__item">人才招聘</a>
<a href="" class="footer-link__item">联系我们</a>
<a href="" class="footer-link__item">讲师招募</a>
<a href="" class="footer-link__item">常见问题</a>
<a href="" class="footer-link__item">意见反馈</a>
<a href="" class="footer-link__item">慕课大学</a>
<a href="" class="footer-link__item">友情链接</a>
</div>
<div class="footer-copy">Copyright © 2016 imooc.com All Rights Reserved | 京ICP备 13046642号-2</div>
<div class="footer-share">
<a href="" class="footer-share__item footer-share__item_i_1"></a>
<a href="" class="footer-share__item footer-share__item_i_2"></a>
<a href="" class="footer-share__item footer-share__item_i_3"></a>
</div>
</footer>
</body>
</html>
body {
margin: 0;
padding: 0;
}
a {
text-decoration: none;
}
//布局样式
#layout(@name) {
& when (@name=header) {
height: 60px;
#bg-color(black);
}
& when (@name=banner) {
height: 562px;
#bg-color(light);
}
& when (@name=recommend) {
width: 1224px;/* 代码中设置的recommend盒子宽度为80%,自己测试的时候可能效果是正确的,但是每个显示器的分辨率不同,80%的宽度就会不同,所以建议设置盒子为固定宽度 */
margin: 0 auto;
background-color: transparent;
position: relative;/*为什么recommend的定位要设置自身为relative而不是banner设为relative,recommend设为absolute?*/
bottom: 121px; /*这里不是根据banner底部的121px定位,为什么不设置banner为relative??*/
}
/* recommend设置相对定位也可以设置显示位置,不需要设置相对于banner来定位。Bottom设置为121px,是相对于自身位置进行移动的,也就是自身原本所在的位置向上移动121px。 */
& when (@name=footer) {
height: 95px;
#bg-color(black);
}
}
//定义背景颜色
#bg-color(@name) {
& when (@name=black) {
background-color: #000000;
}
& when (@name=light) {
background-color: #a9a9a9;
}
& when (@name=white) {
background-color: #ffffff;
}
& when (@name=dark) {
background-color: #696969;
}
}
//定义背景图
#bg-image(@src) {
background-image: url("素材/@{src}");
background-repeat: no-repeat;
}
.cover-background() {
background+_: no-repeat center;
background-size: cover;
}
#square(@w:10px) {
width: @w;
height: @w;
}
//定义字体大小
#font-size(@name) {
& when (@name=small) {
font-size: 12px;
}
& when (@name=medium) {
font-size: 14px;
}
& when (@name=large) {
font-size: 16px;
}
& when (@name=title) {
font-size: 12px;
}
}
//定义字体颜色
#font-color(@name) {
& when (@name=black) {
color: #000000;
}
& when (@name=white) {
color: #ffffff;
}
& when (@name=gray) {
color: #808080;
}
& when (@name=red) {
color: #ff0000;
}
}
//定义字体行高
#line-height(@height) {
line-height: @height;
height: @height;
}
#decorate-bottom() {
&:before {
content: ' ';
display: block;
width: 98%;
left: 1%;
bottom: -5px;
height: 3px;
#bg-color(white);
position: absolute;
border-radius: 4px;
box-shadow: 0 8px 16px rgba(7, 17, 27, .2);
}
&:after {
content: ' ';
display: block;
width: 96%;
left: 2%;
bottom: -11px;
height: 3px;
#bg-color(white);
position: absolute;
border-radius: 4px;
box-shadow: 0 8px 16px rgba(7, 17, 27, .2);
}
}
//课程盒子设置
#recommend-course {
#decorate-bottom();
width: 253px;
height: 308px;
text-align: left;
font-size: 16px;
margin: 10px;
display: inline-block;
box-shadow: 0 4px 8px rgba(7, 17, 27, .1);
#bg-color(white);
}
//无参数函数定义
.fl() {
float: left;
}
.fr() {
float: right;
}
.clearfix() {
&:after {
content: ' ';
display: block;
font-size: 0;
line-height: 0;
clear: both;
zoom: 1;
}
}
//模块样式
.header {
#layout(header);
.logo {
width: 123px;
height: 37px;
background+_: url("素材/logo.png");
.cover-background();
margin: 12px 54px 14px 26px;
.fl();
}
.nav {
.fl();
height: 100%;
&__item {
display: block;
float: left;
padding: 0 26px;
#font-color(white);
#font-size(medium);
#line-height(60px);
&:hover {
#bg-color(light);
}
&-icon-new {
#bg-color(light);
:after {
content: ' ';
}
}
}
}
.search {
padding-right: 25px; /*搜索的放大镜留的位置*/
margin: 11px 25px;
height: 37px;
position: relative;
.fr();
&_input {
width: 267px;
border: none;
border-bottom: 1px solid #ccc;
#bg-color(black);
#line-height(37px);
#font-color(white);
padding: 0;
margin: 0;
}
&::before {
content: '前端入门';
display: block;
position: absolute;
width: 74px;
text-align: center;
#line-height(32px);
#bg-color(light);
}
&_submit {
display: block;
position: absolute;
right: 25px;
top: 4px;
background-position: 0 0; /*取第一个小图标*/
#square(22px); /*切图:每个小图标都是宽22 高22*/
#bg-image(@src: 'icon-1-sprite_w22.png');
}
}
.profile {
.fr();
&_item {
display: block;
float: left;
#square(59px);
margin-right: 1px;
position: relative;
&:hover {
#bg-color(dark);
}
}
&_shoppingBag::before, &_bell::before {
content: ' ';
display: block;
position: absolute;
right: 19px;
top: 22px;
#square(22px);
}
&_shoppingBag::before {
#bg-image(@src: 'icon-1-sprite_w23.png');
background-position: 0 -44px;
}
&_bell::before {
#bg-image(@src: 'shopcar.png');
background-position: 0 -212px;
}
&_user {
#square(40px);
margin: 11px;
border-radius: 50%;
background+_: url("素材/ava.jpg");
.cover-background();
}
}
}
.banner {
background+_: url("素材/bg.jpg");
.cover-background();
width: 100%;
height: 562px;
background-size: cover;
}
.recommend {
#layout(recommend);
overflow: hidden;
font-size: 0;/* 设置font-size属性值为0是为了清除内联元素之间的间隙 */
text-align: center;
.recommend-course {
#recommend-course();
border-radius: 10px;
margin-right:16px;
&__cover {
border-radius: 10px 10px 0 0;
width: 100%;
height: 110px;
overflow: hidden;
img {
width: 100%;
}
}
&__plan{
width: 100%;
#bg-image(@src: 'titlebg.png');
top: 135px;
transition: all 1s;
}
&__plan .caption {
#font-size(medium);
#font-color(black);
margin-top: 33px;
margin-left: 28px;
}
&__times {
#font-size(small);
#font-color(gray);
margin-left: 28px;
margin-bottom: 15px;
}
&__preson {
padding-left: 14px;
}
&__price{
margin-top: 38px;
margin-left: 24px;
#font-color(red);
i{
#font-color(red);
font-style: normal;
padding: 0 3px;
vertical-align: super;
}
}
}
&:hover .recommend-course__plan{
top: 80px;
}
.recommend-course:last-child{
margin: 0 auto;
}
.clearfix();
}
footer{
#layout(footer);
.footer-link{
width: 900px;
margin: 0 auto;
#line-height(16px);
&__item{
padding: 30px 0 15px 0;
display: inline-block;
margin-right: 30px;
float: left;
#font-color(gray);
#font-size(medium);
}
}
.footer-copy{
width: 500px;
#line-height(13px);
margin: 0 auto;
#font-size(small);
#font-color(gray);
}
.footer-share{
float: right;
width: 134px;
height: 40px;
&__item_i{
&_1{
display: inline-block;
width: 40px;
height: 32px;
#bg-image(@src:'icon-6-sprit_w32.png');
background-position: 0 0px;
}
&_2{
display: inline-block;
width: 40px;
height: 32px;
#bg-image(@src:'icon-6-sprit_w32.png');
background-position: 0 -32px;
}
&_3{
display: inline-block;
width: 40px;
height: 32px;
#bg-image(@src:'icon-6-sprit_w32.png');
background-position: 0 -64px;
}
}
}
}
课程盒子的伪类要怎么添加才可以给每个课程加下下面叠住的两个div的效果?
footer部分需要做哪些修改?
1回答
Miss路
2019-03-10
同学,你好。
你的代码好像不太完整,建议你上传完整的代码。或者直接提交作业,把自己的问题标注,批作业的老师会为你一一指出问题,并给出修改建议。
如果帮助到了你,欢迎采纳!
祝学习愉快!
相似问题