博客列表 >7-8作业之前端双飞翼布局

7-8作业之前端双飞翼布局

阿腾的博客
阿腾的博客原创
2019年07月09日 19:35:37834浏览

效果图:(期间不小心写错一个单词,right 写错成righr 导致后来主体右边一直没有反应,核对了css和html,才找到原因)


QQ图片20190709193135.png

实例

.header{
    background-color: aqua;
    /*颜色参考*/
}

/*头部 给一个宽度 高度 还有背景色*/
.header .content {
    width: 1000px;
    height: 60px;
    background-color: black;
    margin: 0  auto;
}
.header .content .nav {
    margin-top: 0;
    margin-bottom: 0;
    padding-left: 0;
}
.header .content .nav  .item{
   list-style-type: none;

}

.header .content .nav  .item  a {
    float: left;
    min-width: 80px;
    min-height: 60px;
/*设置行高与头部等高  使导航文件可以垂直居中*/
    line-height: 60px;
    color: white;
    /* 设置民航文本的左右内边距,使导航文本不要挨的太紧 */
    padding: 0 18px;
    /* 去掉链接标签默认的下划线 */
    text-decoration: none;

    text-align: center;


}

/* 当鼠标移入到导航链接上时改变背景色与文本前景色,实现当前导航高亮功能 */
.header .content .nav  .item  a:hover{
    background-color: crimson;
    /* 将导航文本设置为系统根字体大小的1.5倍 */
    font-size: 1.5rem;

}
/******************* 头部样式结束 ******************/



/******************* 主体样式开始 ******************/


/***** 第一步: 主体容器设置总宽度,并水平居中 *****/
.container {
    width: 1000px;
    /*min-height: 800px;*/
    margin: 5px auto;
    /* 参考色块: 整个主体容器是灰色背景 */
    background-color: lightgray;
    /*border: 2px solid red;*/
    /*包住浮动的子元素*/
    overflow: hidden;
}

/***** 第二步: 左,右二侧固定宽度,中间区块自适应 *****/

/* 1. 中间区块宽度设置在它的容器wrap中 */
.wrap {
    /* 继承父级区块container宽度 width:1000px; */
    width: inherit;
    /* 高度也继承主体区块 */
    min-height: 800px;
    /*参考背景色*/
    background-color: cyan;
}

/* 2. 设置左,右区块的宽度和高度(因为无内容,所以设置了最小高度),并设置参考色块 */

/* 左边栏样式 */
.left {
    width: 200px;
    min-height: 800px;
    background-color: lightcoral;
}
/* 右边栏样式 */
.right {
    width: 200px;
    min-height: 800px;
    background-color: lightseagreen
}


/***** 第三步:将中间,左,右区块全部左浮动 *****/

/* 因中间区块宽度100%,所以左右会被挤压到下面 */
.wrap, .left, .right {
    float: left;
}

/***** 第四步: 将left和right拉回到他们正确的位置上(重点) *****/

/* 通过设置区块的负外边距的方式,实现向反方向移动区块 */
.left {
    /* -100%等价于-1000px,将左区块拉回到中间的起点处*/
    /*margin-left: -1000px;*/
    margin-left: -100%;
}
.right {
    /* -200px就正好将右区块上移到中间区块右侧显示 */
    margin-left: -200px;
}
/* 现在还有最后一个问题,中间内容区块main没有显示出来 */

/***** 第五步: 将中间的内容区块 main 显示出来 *****/
.main {
    padding-left: 200px;
    padding-right: 200px;
    /*padding: 0 200px;*/
}
/******************* 底部样式开始 ******************/

/* 底部与头部的基本样式类似 */
.footer {
    background-color: lightgray;
}

.footer .content {
    width: 1000px;
    height: 60px;
    background-color: #444;
    margin: 0 auto;
}
.footer .content p {
    text-align: center;
    line-height: 60px;
}

.footer .content  a {
    text-decoration: none;
    color: lightgrey;
}

/* 鼠标移入时显示下划线并加深字体前景色 */
.footer .content  a:hover {
    color: white;
}

/******************* 底部样式结束 ******************/

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>双飞翼布局</title>
    <link rel="stylesheet" href="css/shuangfeiyi.css">

</head>
<body>
<!--主体的头部-->
<div class="header">
    <div class="content">

    <ul class="nav">
        <li class="item"><a href="">首页</a></li>
        <li class="item"><a href="">公司产品</a></li>
        <li class="item"><a href="">公司简介</a></li>
        <li class="item"><a href="">联系我们</a></li>
        <li class="item"><a href="">在线商城</a></li>
    </ul>
    </div>
</div>

<!--中间主体-->
<div class="container">
    <!-- 思路:必须先创建中间主体区块,确保它优先被渲染出来, 再创建左右二列 -->

    <!-- 1. 中间内容区块 -->
    <!-- 中间内容区需要创建一个父级容器进行包裹 -->
    <div class="wrap">
        <div class="mian">主体内容区</div>
    </div>
    <!--2.左侧边栏区-->
		<div class="left"> 主体左侧</div>

    <!--3.右侧边栏区-->
		<div class="right"> 主体右侧</div>

</div>

<div class="footer">
    <div class="content">
        <p>
            <a href="">底部导航1</a>
            <a href="">底部导航2</a>
            <a href="">底部导航3</a>
        </p>
    </div>
</div>

</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

 

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议