HTML5+CSS3基础(day11)

一、CSS盒子模型(续)

1.padding不会撑开盒子的情况

示例

<title>padding不会影响盒子大小的情况</title>
    <style>
        h1 {
            /* 如果给一个盒子不制定宽度,则默认跟他父亲的宽度一样,这里h的父亲是body body是浏览器的宽度 */
            /* 只要设定了宽度,不管多少,都会因为padding改变 */
            /* width: 100%; */
            height: 200px;
            background-color: pink;
            /* 宽度没有变,高度多加了60px */
            padding: 30px;
        }

        div {
            width: 300px;
            height: 100px;
            background-color: purple;
        }

        div p {
            /* 如果p指定宽度,则会比父亲多出60像素距离 */
            /* width: 100%; */
            /* p没有指定宽度,默认和父亲一样宽 有了padding p标签还是300*60像素 */
            /* 遇到这种嵌套,孩子和父亲一样宽就没有必要写宽度了 */
            padding: 30px;
            background-color: skyblue;
        }
    </style>
</head>

<body>
    <h1></h1>
    <div>
        <p></p>
    </div>
</body>

2.盒子模型外边距margin

在这里插入图片描述在这里插入图片描述

示例

<title>盒子模型之外边距margin</title>
    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: pink;
        }

        /* 
        .one {
            margin-bottom: 20px;
        } */
        /*效果一样 */

        .two {
            /* margin-top: 20px; */
            /* margin: 30px; */
            margin: 30px 50px;
        }
    </style>
</head>

<body>
    <div class="one">1</div>
    <div class="two">2</div>
</body>

3.外边距典型应用-块级盒子水平居中对齐

示例

<title>外边距典型应用-块级盒子水平居中对齐</title>
    <style>
        .header {
            width: 900px;
            height: 200px;
            background-color: pink;
            /* margin-left: auto;  */
            /* margin-right: auto; */
            /* 最常用 */
            /* margin: 0 auto; */
            /* 上下左右都凹凸 */
            /* margin: auto; */
            /* 想要上边距更大一些 */
            margin: 100px auto;

        }
    </style>
</head>

<body>
    <div class="header"></div>
</body>

4.行内元素和行内块元素水平居中

示例

 <title>行内元素/行内块元素水平居中对齐</title>
    <style>
        .header {
            width: 900px;
            height: 200px;
            background-color: pink;
            margin: 100px auto;
            text-align: center;
        }

        /* 行内元素或者行内块元素水平居中给其父元素添加 text-align: center即可 */
    </style>
</head>

<body>
    <div class="header">
        <span>里面的文字</span>
    </div>
    <div class="header">
        <img src="../img/2.png" alt="">
    </div>
</body>

5.外边距合并-嵌套块元素塌陷

在这里插入图片描述在这里插入图片描述在这里插入图片描述

示例

 <title>外边距合并-嵌套块级元素垂直外边距塌陷</title>
    <style>
        .father {
            width: 400px;
            height: 400px;
            background-color: purple;
            margin-top: 50px;
            /* 1.可以为父元素定义上边框 */
            /* border: 1px solid red;
            border: 1px solid transparent; */
            /* 2.可以为父元素定义上内边距 */
            /* padding: 1px; */
            /* 3.可以为父元素添加overflow:hidden */
            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>

6.清除内外边距

在这里插入图片描述

示例

<title>清除内外边距</title>
    <style>
        /* 这句话也是我们CSS的第一行代码 */
        * {
            margin: 0;
            padding: 0;
        }

        span {
            background-color: pink;
            /* 行内元素尽量只设置左右内外边距 发现只有左右外边距变化了 */
            margin: 20px;
        }
    </style>
</head>

<body>
    123
    <ul>
        <li>abcd</li>
    </ul>
    <span>行内元素尽量只设置左右的内外边距</span>
</body>

7.ps的基本操作

在这里插入图片描述在这里插入图片描述

8.综合案例

在这里插入图片描述在这里插入图片描述在这里插入图片描述

(1)综合案例-产品模块布局分析

在这里插入图片描述

(2)综合案例-box布局

在这里插入图片描述

(3)综合案例-图片和段落制作
(4)综合案例-评价和详情制作
(5)综合案例-竖线细节制作

示例

<title>综合案例-产品模块</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }

        body {
            background-color: #f5f5f5;
        }

        a {
            color: #333;
            text-decoration: none;
        }

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


        .box img {
            /* 宽度高度只设置一个 会等比例缩放 */
            width: 100%;
        }

        .review {
            height: 70px;
            font-size: 14px;
            /* padding和margin都可以 */
            /* 因为这个段落没有 width属性 所以 padding不会撑开盒子的宽度 */
            /* 这个盒子有高度 如果再指定一个padding-top会撑大盒子 所以我们考虑用margin就不用去减去盒子的高度 */
            padding: 0 28px;
            margin-top: 30px;
        }

        .appraise {
            font-size: 12px;
            color: #b0b0b0;
            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="../img/122.png" alt="">
        <p class="review">啄木鸟、乌云和松果,暑热和针叶,全都化成了苍白的飞沫。</p>
        <div class="appraise">来自于 117384232 的评价</div>
        <div class="info">
            <h4><a href="#">Redmi AirDots真无线蓝...</a></h4>
            <em>|</em>
            <!-- <span style="color: #cecece">|</span> -->
            <!-- border ?-->
            <!-- 盒子与盒子之间的距离通过margin实现 -->
            <span>99.9元</span>
        </div>
    </div>
</body>
(6)综合案例-快报模块布局分析

在这里插入图片描述

(7)综合案例-快报模块头部制作

在这里插入图片描述

(8)综合案例-快报模块列表制作

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

示例

<title>新闻快报模块头部制作</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }

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

        .box h3 {
            height: 32px;
            border-bottom: 1px dotted #ccc;
            font-size: 14px;
            font-weight: 400;
            line-height: 32px;
            /* 因为盒子有个底边框 用margin的话 底边框也会右移 */
            /* margin-left: 15px; */
            /* 这里用padding才对 盒子不会撑大 因为h3没有写宽度属性*/
            padding-left: 15px;
        }

        .box ul li a {
            font-size: 12px;
            color: #666;
            text-decoration: none;
        }

        /* 页面中的小li都去掉了小圆点 */
        li {
            list-style: none;
        }

        .box ul li {
            height: 23px;
            line-height: 23px;
            /* 因为没有设置宽度 */
            padding-left: 20px;
        }

        .box ul {
            margin-top: 7px;
        }

        .box ul li a:hover {
            text-decoration: underline;
        }
    </style>
</head>

<body>
    <div class="box">
        <h3>品优购快报</h3>
        <!-- ul>li*5>a -->
        <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>

9.圆角边框

(1)圆角边框原理

在这里插入图片描述在这里插入图片描述

示例

 <title>圆角边框</title>
    <style>
        div {
            width: 300px;
            height: 150px;
            background-color: pink;
            border-radius: 10px;
        }
    </style>
</head>

<body>
    <div></div>
</body>
(2)圆角边框的使用

在这里插入图片描述

示例

<title>圆角边框常用写法</title>
    <style>
        .yuanxing {
            width: 200px;
            height: 200px;
            background-color: pink;
            /* border-radius: 100px; */
            /* 50% 就是宽度和高度的一半 等价于 100px */
            border-radius: 50%;
        }

        .juxing {
            width: 300px;
            height: 100px;
            background-color: pink;
            /* 圆角矩形设置为高度的一半 */
            border-radius: 50px;
        }

        .radius {
            width: 200px;
            height: 200px;
            /* border-radius: 10px 20px 30px 40px; */
            /* 左对角线和右对角线 */
            /* border-radius: 10px 40px; */
            border-top-left-radius: 20px;
            background-color: pink;
        }
    </style>
</head>

<body>
    1.圆形的做法:
    <div class="yuanxing"></div>
    2.圆角矩形的做法:
    <div class="juxing"></div>
    3.可以设置不同的圆角:
    <div class="radius"></div>
</body>

10.盒子阴影

在这里插入图片描述在这里插入图片描述

示例

<title>盒子阴影</title>
    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: pink;
            margin: 100px auto;
            /* 水平阴影 数值减小左移 垂直阴影 数值减小上移 blur为0是实的 */
            /* box-shadow: 10px 10px 10px 10px rgba(0, 0, 0, .3) inset; */
            /* box-shadow: 10px 10px; */

        }

        div:hover {
            box-shadow: 10px 10px 10px -4px rgba(0, 0, 0, .3);
        }

        /* 原先盒子没有阴影,当我们鼠标经过盒子就添加阴影效果 */
    </style>
</head>

<body>
    <div></div>
</body>

11.文字阴影

在这里插入图片描述

示例

 <title>文字阴影</title>
    <style>
        div {
            font-size: 50px;
            color: orangered;
            font-weight: 700;
            text-shadow: 5px 5px 6px rgba(0, 0, 0, .3);
        }
    </style>
</head>

<body>
    <div>
        你是阴影,我是火影
    </div>
</body>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值