css、盒子模型2个案例、代码分析、结论总结

目录

案例1 产品模块

分析:

​代码:

效果:

总结:

案例2:快报模块

分析:

​代码:

效果:


案例1 产品模块

分析:

(1)要做成这样的页面,首先需要一个盒子模块div.box

(2)上面放一个img图片

(3)中间放一个评价段落盒子p.review

(4)下面也是一个评价盒子div.appraise

(5)最后是详情盒子div.info



代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>盒子综合案例-产品模块</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }

        body {
            background-color: f5f5f5;
        }

        a {
            color: black;
            text-decoration: none;
        }

        .box {
            width: 298px;
            height: 415px;
            background-color: #fff;
            /* 让块级盒子水平居中对齐 */
            margin: 100px auto;

        }

        img {
            /* 直接插入会比较宽 让图片和父亲一样宽 */
            width: 100%;
        }

        .review {
            font-size: 14px;
            /* 上侧有距离 设置height */
            height: 70px;
            /* 左右有距离 padding margin */
            /* 盒子本身没有宽度  没有width属性,加padding不会增加盒子宽度 */
            padding: 0 28px;
            /* 但是盒子有高度属性 用padding会增大盒子 所以用margin-top调整高度 */
            margin-top: 30px;

        }

        .appraise {
            color: #b0b0b0;
            font-size: 12px;
            margin-top: 20px;
            padding: 0 28px;
        }

        .info {
            font-size: 14px;
            margin-top: 15px;
            padding: 0 28px;
        }

        .info h4 {
            display: inline-block;
            font-weight: 400;

        }

        .info span {
            color: #ff6700;
        }

        .info em {
            font-style: normal;
            color: #ebe4e0;
            margin: 0 6px 0 15px;
        }
    </style>
</head>

<body>
    <div class="box">
        <img src="images/boximg.png" alt="">
        <p class="review">快递牛,整体不错蓝牙可以说秒连。红米给力</p>
        <div class="appraise">来自于11738432</div>
        <div class="info">
            <!-- 这样的话,h4和span就不在同一行,但是只要把h4改成行内块就可以了 -->
            <h4><a href="#">Redmi AirDots真无线蓝...</a></h4>
            <em>|</em>
            <span>99.9元></span>
        </div>
    </div>
</body>

</html>

效果:

总结:

1. 布局为啥用不同盒子,我只想用div?
标签都是有语义的, 合理的地方用合理的标签。比如产品标题 就用 h, 大量文字段落就用p
2. 为啥用辣么多类名?
类名就是给每个盒子起了一个名字,可以更好的找到这个盒子, 选取盒子更容易,后期维护也方便。
3. 到底用 margin 还是 padding?
大部分情况两个可以混用,两者各有优缺点,但是根据实际情况,总是有更简单的方法实现。
最后一定多运用辅助工具,比如屏幕画笔,ps等等

案例2:快报模块

分析:

1、一个div盒子分成两部分,上面一个h3,下面一个无序列表ul,23px高

2、下面ul:li左侧padding-left margin-left

3、上面li也有距离,但是不好在li里面加,因为所有li都会有,所以给ul margin / padding

新知识:去掉里前面的 项目符号(小圆点)代码

 /* 要记得单独写 去掉所以li的小点 */
        li {
            /* 去掉里前面的 项目符号(小圆点) list-style:none */
            list-style: none;
        }

代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>快报模式</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }

        .box {
            width: 248px;
            height: 163px;
            border: 1px solid #ccc;
            margin: 100px auto;
        }

        /* 要记得单独写 去掉所以li的小点 */
        li {
            /* 去掉里前面的 项目符号(小圆点) list-style:none */
            list-style: none;
        }

        .box h3 {
            height: 32px;
            /* 底边虚线 */
            border-bottom: 1px dotted #ccc;
            /* 字体大小 */
            font-size: 14px;
            /* 取消加粗 */
            font-weight: 400;
            /* 垂直居中  行高=盒子高 */
            line-height: 32px;
            /* 左侧空 padding 不会撑大盒子 没有width*/
            padding-left: 15px;
        }

        /* 无序列表ul */
        .box ul li a {
            font-size: 12px;
            color: #666;
            /* 没有下划线 */
            text-decoration: none;
        }

        .box ul li a:hover {
            text-decoration: underline;
        }

        .box ul li {
            height: 23px;
            /* 行高改成和高度一样 可以居中 */
            line-height: 23px;
            /* 左边距离  */
            padding-left: 20px;
        }

        /* 上面距离 */
        .box ul {
            margin-top: 7px;
        }
    </style>
</head>

<body>
    <div class="box">
        <h3>品优购快报</h3>
        <ul>
            <li><a href="#">【特惠】爆款耳机5折秒!<a></li>
            <li><a href="#">【特惠】母亲节,健康好礼低至5折!</a></li>
            <li><a href="#">【特惠】爆款耳机5折秒!</a></li>
            <li><a href="#">【特惠】9.9元洗100张照片!</a></li>
            <li><a href="#">【特惠】长虹智能空调立省1000</a></li>
        </ul>
    </div>
</body>

</html>

效果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值