CSS练习题

1. 简易版小米侧边栏的实现

CSS学习3(CSS特性、盒子模型) - 201812 - 博客园 (cnblogs.com)

分析:背景应该为具有透明度的灰黑色,鼠标在对应位置显示的是小手,说明应该是链接。需要特别注意的是padding等会撑大盒子,需要计算好。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS</title>
    <!--    <link href="study01.css" rel="stylesheet">-->
    <style>
/*   230*42 460-420=40    */
        div {
            width: 234px;
            height: 420px;
            padding: 20px 0px;  /*  上下有内边距  */
            background: rgba(105,101,101,.6);
        }
        a {
            width: 204px;
            height: 42px;
            line-height: 42px;  /*文字垂直居中*/
            display: block;     /*转换为块元素*/
            text-decoration: none;    /*取消a标签自带的下划线*/
            color: white;
            padding: 0px 0px 0px 30px;  /*文字离边框有一定的距离*/
        }
        a:hover {
            background-color: #ff6700;
        }
    </style>
</head>
<body>
<div>
<!--使用a标签-->
    <a href="#">手机</a>
    <a href="#">电视</a>
    <a href="#">家电</a>
    <a href="#">笔记本 平板</a>
    <a href="#">出行 穿戴</a>
    <a href="#">耳机 音箱</a>
    <a href="#">健康 儿童</a>
    <a href="#">生活 箱包</a>
    <a href="#">智能 路由器</a>
    <a href="#">电源 配件</a>
</div>
</body>
</html>

效果:

 

 

 2. 新浪导航栏简单实现

CSS学习3(CSS特性、盒子模型) - 201812 - 博客园 (cnblogs.com)

分析:盒子的大小不一致,因为盒子里面的字数是不一样的。

 

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS</title>
    <style>
        .nav {
            height: 41px;
            background-color: #fcfcfc;
            border-bottom: 1px solid #edeef0;
            border-top: 3px solid #ff8500;
            line-height: 41px;
        }
        .nav a {
            display: inline-block;
            color: #4c4c4c;
            text-decoration: none;
            padding: 0 10px;
        }
        .nav a:hover {
            background-color: #eee;
            color: #ff8500;
        }
    </style>
</head>
<body>
<div class="nav">
    <a href="#">设为首页</a>
    <a href="#">手机新浪网</a>
    <a href="#">移动客户端</a>
    <a href="#">登录</a>
    <a href="#">微博</a>
    <a href="#">博客</a>
    <a href="#">邮箱</a>
    <a href="#">网站导航</a>
</div>
</body>
</html>

效果:

 

 3. 小米产品模块的简单实现

 CSS学习4(边框、阴影、浮动) - 201812 - 博客园 (cnblogs.com)

分析:基于浮动,首先背景是一个大盒子,包含两个小盒子,这两个小盒子设置浮动就可以在原本的大盒子上面左右并行显示了。

 

 

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS</title>
    <style>
        .box {
            height: 460px;
            width: 1200px;
            background-color: lightblue;
            margin: 0 auto;
        }
        .left {
            float: left;
            width: 210px;
            height: 460px;
            background-color: rgba(105,101,101,.6)
        }
        .right {
            float: left;
            width: 990px;
            height: 460px;
            background-color: lightblue;
        }
    </style>
</head>
<body>

<div class="box">
<div class="left"></div>
<div class="right"></div>
</div>
</body>
</html>

 

大致效果:

 4、

 

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS</title>
    <style>
        * {
            /*注意,ul和li是由默认的内外边距的,所以要先修改掉*/
            margin:0;
            padding: 0;
        }
        .box {
            width:1226px;
            height: 285px;
            background-color: pink;
            margin: 0 auto;   /*居中对齐*/
        }
        .box li {
            list-style: none;
            width: 296px;
            height: 285px;
            background-color: blue;
            float: left;
            margin-right: 14px;    /*这样子写会导致最后一个li不在父盒子里面,原因是最后一个li不应该有右边距的*/
        }
        .box .last {                /*要注意权重问题*/
            margin-right: 0;
        }
    </style>
</head>
<body>

<ul class="box">
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li class="last">4</li>
</ul>

</body>
</html>

5、

 

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS</title>
    <style>
        .box {
            width: 1226px;
            height: 615px;
            background-color: pink;
            margin: 0 auto;
        }
        .left {
            float: left;
            width: 234px;
            height: 615px;
            background-color: blue;
        }
        .right {
            float: left;
            width: 992px;
            height: 615px;
            background-color: lightblue;
        }
        .right>div {
            /*注意:有大于号>,只选择right里面包含的div标签,如果div标签里面还包含div是不会被选择出来的*/
            float: left;
            height: 300px;
            width: 234px;
            background-color: green;
            margin-left: 14px;
            margin-bottom: 14px;
        }
    </style>
</head>
<body>
<div class="box">
    <div class="left">左盒子</div>
    <div class="right">
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
    </div>
</div>
</body>
</html>

 

 

posted on 2022-12-19 18:36  201812  阅读(70)  评论(0编辑  收藏  举报