前端学习第57天 背景样式、精灵图、盒子模型布局细节、盒子模型案例、w3c主页

一、背景样式

背景图片过大过小处理

图片过大直接设置宽高

图片过小会自动平铺,需求设置不要平铺

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>背景样式</title>
    <style type="text/css">
        .box, .wrap {
            width: 200px;
            height: 200px;
            background-color: orange;
        }
        .wrap {
            /*图片过大会显示不全*/
            background-image: url('img/timg.jpg');
            /*规定背景图片显示尺寸*/
            background-size: 200px 200px;
        }
        .box {
            /*图片过小会平铺*/
            background-image: url('img/123.png');
            /*平铺:repeat-x | repeat-y | repeat | no-repeat*/
            background-repeat: no-repeat;
            /*位置(定位): 可以写具体数值,也可以写位置单词*/
            /*background-position: 10px center;*/
            /*background-position: right bottom;*/
            /*background-position: center center;*/

            /*设置一个值时,控制的是x轴,y轴取center*/
            /*设置;两个值时,第一个值控制x,第二个值控制y*/
            background-position: 10px 40px;

            /*整体设置*/
            background: url('img/123.png') red no-repeat 50px 50px;
        }
        /*注: 实际开发中,资源图片大小一定要与显示区域等大*/
    </style>
</head>
<body>
    <img src="img/123.png" alt="">

二、精灵图

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>精灵图</title>
    <style type="text/css">
        .box {
            width: 500px;
            height: 100px;
            /*height: 300px;*/
            border: 5px solid black;
        }
        .box {
            background-image: url('img/bg.png');
            background-position: 0 -150px;
        }
        .box:hover {
            cursor: pointer;
            background-position: 0 -250px;
        }
        /*1.显示区域一定要与精灵图目标小图大小一致*/
        /*2.通过背景图片定位方式将目标小图移至显示位置*/
    </style>

    <style type="text/css">
        .lt1 {
            width: 155px;
            height: 48px;
            background: url('img/bg.png') no-repeat 0 0;
        }
        .lt1:hover {
            cursor: pointer;
            background: url('img/bg.png') no-repeat 0 -48px;
        }
    </style>
</head>
<body>
    <!-- 精灵图: 各种小图拼接起来的一张大图 -->
    <!-- 为什么使用精灵图: 减少请求次数, 降低性能的消耗, 二次加载图片资源时极为迅速(不在需要发送请求) -->
    <div class="box"></div>
    <div class="lt1"></div>
</body>
</html>

三、盒子模型布局细节

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>盒模型布局细节</title>
    <style type="text/css">
        .sup {
            width: 500px;
            height: 100px;
            background: orange;
        }
        .sub {
            width: 50px;
            height: 50px;
            background-color: red;
        }
        /*sub在sup中 水平居中*/
        .sub {
            /*margin-left: auto;
            margin-right: auto;*/
            margin: 0 auto;
        }
        /*垂直居中*/
        .sub {
            margin-top: 24px;
        }
        /*margin坑: 父子联动*/
        /*.box {
             1px;
            height: 1px;
        }*/
        /*解决一: 设置border-top*/
        .sup {
            /*border-top: 1px solid transparent;
            height: 99px;*/
        }
        /*解决二: 设置padding-top*/
        .sup {
            padding-top: 1px;
            height: 99px;
        }


        /*margin坑: 上兄弟margin-bottom与下兄弟margin-top重合, 取大值*/
        /*解决方案: 只设置一个,建议设置下兄弟margin-top*/

        /*margin布局: 下盒子的垂直起始位置决定于同结构中上盒子的margin结束位置;水平起始位置就是父级content最左侧*/
    </style>
</head>
<body>
    <div class="sup">
        <!-- <div class="box"></div> -->
        <div class="sub"></div>
    </div>
</body>
</html>

四、盒子模型案例

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>盒模型案例</title>
    <style type="text/css">
        /*reset*/
        body, h1, ul {
            margin: 0;
            padding: 0
        }
        ul {
            list-style: none;
        }
        a {
            color: #333;
            text-decoration: none;
        }
    </style>
    <style type="text/css">
        .main {
            width: 1210px;
            height: 500px;
            background: orange;
            margin: 0 auto;
        }
        .nav {
            width: 1210px;
            margin: 0 auto;
            height: 48px;
        }
        .nav_a {
            /*a标签就支持宽高,并且可以嵌套其他标签*/
            display: block;
            height: 48px;
            background: red
        }
        li:first-child .nav_a {
            background: blue;
            width: 155px;
        }
        li:nth-child(2) .nav_a {
            background: pink;
            width: 150px;
            margin-left: 155px;
            margin-top: -48px;
        }
        li:nth-child(3) .nav_a {
            background: green;
            width: 100px;
            margin-left: 305px;
            margin-top: -48px;
        }
    </style>
</head>
<body>
    <!-- ul.nav>(li>a.nav_a)*7 -->
    <ul class="nav">
        <li>
            <a class="nav_a" href=""></a>
        </li>
        <li>
            <a class="nav_a" href=""></a>
        </li>
        <li><a class="nav_a" href=""></a></li>
        <li><a class="nav_a" href=""></a></li>
        <li><a class="nav_a" href=""></a></li>
        <li><a class="nav_a" href=""></a></li>
        <li><a class="nav_a" href=""></a></li>
    </ul>
    <div class="main"></div>
</body>
</html>

五。w3c主页(部分)

!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>w3c</title>
    <link rel="stylesheet" type="text/css" href="css/reset.css">
    <style type="text/css">
        .wraper {
            /*为子级规定宽度, 高度由子级撑开*/
            width: 1210px;
            margin: 0 auto;
            background-color: #FDFCF6;
        }
    </style>
    <link rel="stylesheet" type="text/css" href="css/header.css">
    <link rel="stylesheet" type="text/css" href="css/nav.css">
    <link rel="stylesheet" type="text/css" href="css/main.css">
</head>
<body>
    <div class="wraper">
        <!-- header -->
        <div class="header">
            <h1 class="header-h1">w3c主页</h1>
            <div class="header-search">
                <!-- <div> -->
                    <input type="text">
                    <button>ok</button>
                <!-- </div> -->
            </div>
        </div>
        <!-- nav -->
        <ul class="nav">
            <li class="li1"><a href="" title=""></a></li>
            <li class="li2"><a href="" title=""></a></li>
            <li class="li3"><a href="" title=""></a></li>
            <li class="li4"><a href="" title=""></a></li>
            <li class="li5"><a href="" title=""></a></li>
            <li class="li6"><a href="" title=""></a></li>
            <li class="li7"><a href="" title=""></a></li>
        </ul>
        <!-- main -->
        <div class="main">
            <div class="main-left">
                <div class="hidden"></div>
                <h2>HTML 教程</h2>
                <ul>
                    <li><a title="HTML 教程" href="">HTML</a></li>
                    <li><a title="" href="">HTML5</a></li>
                    <li><a title="" href="">XHTML</a></li>
                    <li><a title="" href="">CSS</a></li>
                    <li><a title="" href="">CSS3</a></li>
                    <li><a title="" href="">TCP/IP</a></li>
                </ul>

                <h2>HTML 教程</h2>
                <ul>
                    <li><a title="HTML 教程" href="">HTML</a></li>
                    <li><a title="" href="">HTML5</a></li>
                    <li><a title="" href="">XHTML</a></li>
                    <li><a title="" href="">CSS</a></li>
                    <li><a title="" href="">CSS3</a></li>
                    <li><a title="" href="">TCP/IP</a></li>
                </ul>
            </div>
            <div class="main-center">
                <div class="main-box b1">
                    <h2>领先的 Web 技术教程 - 全部免费</h2>
                    <p>在 w3school,你可以找到你所需要的所有的网站建设教程。</p>
                    <p>从基础的 HTML 到 CSS,乃至进阶的 XML、SQL、JS、PHP 和 ASP.NET。</p>
                    <p>
                        <b>从左侧的菜单选择你需要的教程!</b>
                    </p>
                </div>
                <div class="main-box b2">
                    <h2>完整的网站技术参考手册</h2>
                    <p>我们的参考手册涵盖了网站技术的方方面面。</p>
                    <p>其中包括W3C标准技术:HTML、CSS、XML 。以及其他技术,诸如 JavaScript、PHP、SQL 等。</p>
                </div>

                <div class="main-box b2">
                    <h2>完整的网站技术参考手册</h2>
                    <p>我们的参考手册涵盖了网站技术的方方面面。</p>
                    <p>其中包括W3C标准技术:HTML、CSS、XML 。以及其他技术,诸如 JavaScript、PHP、SQL 等。</p>
                </div>
            </div>
            <div class="main-right">
                <div class="hidden"></div>
            </div>
        </div>
        <!-- footer -->
        <div class="footer"></div>
    </div>
</body>
</html>
原文地址:https://www.cnblogs.com/ye-hui/p/10091949.html