前端基础学习-(1)京东顶部导航条

前端基础学习-(1)京东顶部导航条

作为前端学习的小白,个人在学习过程中认知:京东导航条使用到了浮动(float)、定位(position)、垂直居中、图标引用等知识。

实现效果

前端基础学习-(1)京东顶部导航条
前端基础学习-(1)京东顶部导航条

代码实现

html代码如下:
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>京东顶部导航条</title>
    <link rel="stylesheet" href="../CSS/reset.css">
    <link rel="stylesheet" href="../CSS/fontawesome-free-5.12.1-web/css/all.min.css">
    <link rel="stylesheet" href="../CSS/京东顶部导航条.css">
</head>

<body>
    <div class="wrapper">
        <div class="outer">
            <div class="left_top_nav">
                <div class="current-city">
                    <i class="fas fa-map-marker-alt"></i>
                    <span>江苏</span>
                </div>
                <div class="city_list">
                    城市列表
                </div>
            </div>

            <ul class="right_top_nav">
                <li>手机京东</li>
                <div class="vertical">|</div>
                <li>
                    <div class="net_intro">网站导航<i class="fas fa-angle-down"></i></div>
                    <div class="net_intro_list">网站导航列表</div>
                </li>
                <div class="vertical">|</div>
                <li>
                    <div class="customer">客户服务<i class="fas fa-angle-down"></i></div>
                    <div class="customer-list">
                        客户服务
                    </div>
                </li>
                <div class="vertical">|</div>
                <li>
                    <div class="company">
                        <a href="#" class="font_red">企业采购</a><i class="fas fa-angle-down"></i>
                    </div>
                    <div class="company-list">
                        企业采购
                    </div>
                </li>
                <div class="vertical">|</div>
                <li><a href="#">京东会员</a></li>
                <div class="vertical">|</div>
                <li>
                    <div class="myjd">
                        <a href="#">我的京东</a><i class="fas fa-angle-down"></i>
                    </div>
                    <div class="order">
                        订单...
                    </div>
                </li>
                <div class="vertical">|</div>
                <li><a href="#">我的订单</a></li>
                <div class="vertical">|</div>
                <li><a href="#" class="font_red">免费注册</a></li>
                <li><a href="#">你好,请登录</a></li>
            </ul>
        </div>
    </div>
</body>

</html>
京东顶部导航条基本CSS样式
/* 整个顶部导航栏 */
.wrapper {
    background-color: #E3E4E5;
    height: 32px;
}

/* 导航栏中间部分 */
.outer {
    width: 1200px;
    margin: 0 auto;
    height: 100%;
    position: relative;
}

/* 左上方地点信息 */
.left_top_nav {
    float: left;    
}

/* 地点的当前信息 */
.left_top_nav .current-city {
    height: 30px;
    padding: 0 10px;
    border: 1px solid transparent;  
    border-bottom: none;
    z-index: 999;
    position: relative;
}

/* 图标大小及颜色 */
.left_top_nav i {
    color: #F10215;
    font-size: 12px;
}

/* 地点文字信息大小、颜色、垂直居中显示 */
.left_top_nav span {
    color: #999999;
    font-size: 12px;
    line-height: 30px;
}

/* 下拉城市列表 */
.left_top_nav .city_list {
    /* 设置隐藏且不占位置 */
    display: none;
    position: absolute;
    background-color: #ffffff;
    text-align: center;
    color: #999999;
    line-height: 400px;
    width: 300px;
    border: 1px solid #CCCCCC;
    /* 设置阴影 */
    box-shadow: 1px 1px rgba(0, 0, 0, .1);
    z-index: 99;
}

/* 设置位置信息移入时地点文字信息 */
.left_top_nav:hover .current-city{
    cursor: pointer;
    background-color: #ffffff;
    border: 1px solid #CCCCCC;
    border-bottom: none;
    padding-bottom: 1px;
}

/* 设置文字信息移入时颜色切换 */
.current-city:hover span {
    color: #E33333;
}

/* 设置城市列表显示 */
.left_top_nav:hover .city_list {
    display: block;
    top: 31px;
}


/* 右上方导航信息 */
.right_top_nav {
    float: right;
    width: 800px;
    height: 32px;
    position: relative;
}

/* 设置右侧详细信息浮动*/
.right_top_nav li {
    float: right;
    line-height: 32px;
    color: #999999;
    font-size: 12px;
}

/* 设置我的京东边框显示 */
.right_top_nav .myjd {
    height: 30px;
    line-height: 30px;
    position: relative;
    border: 1px solid transparent;
    z-index: 999; 
}

/* 设置图标与文字之间的间隔 */
.right_top_nav i {
    margin: 0 8px;
}

/* 设置右侧列表中超链接的基本样式 */
.right_top_nav li a {
    /* 取消下划线 */
    text-decoration: none;
    color: #999999;
    padding-left: 7px;
}

/* 设置超链接移入时变成红色 */
.right_top_nav li a:hover {
    color: #F10215;
}

/* 设置我的京东的下拉列表属性 */
.right_top_nav li:nth-of-type(6) .order {
    display: none;
    position: absolute;
    line-height: 200px;
    width: 150px;
    text-align: center;
    background-color: #ffffff;
    border: 1px solid #CCCCCC;
    z-index: 99;
}

/* 设置我的京东移入时字体背景相关属性 */
.right_top_nav li:nth-of-type(6):hover .myjd{
    background-color: #ffffff;
    border: 1px solid #CCCCCC;
    border-bottom: none;
    /* 在移入状态下设置下内边距增加,盖住下方显示列表的边框线 */
    padding-bottom: 1px;
}

/* 设置我的京东移入时下拉列表显示 */
.right_top_nav li:nth-of-type(6):hover .order {
    /* 设置隐藏的元素显示 */
    display: block;
    top: 31px;
}

/* 设置企业采购样式 */
.right_top_nav .company {
    position: relative;
    line-height: 30px;
    height: 30px;
    border: 1px solid transparent;
    z-index: 999;
}

/* 设置企业采购列表样式 */
.right_top_nav .company-list {
    display: none;
    width: 150px;
    height: 100px;
    line-height: 100px;
    text-align: center;
    background-color: #ffffff;
    position: absolute;
    border: 1px solid #CCCCCC;
    z-index: 99;
}

/* 设置企业采购移入时效果切换 */
.right_top_nav li:nth-of-type(6):hover .company{
    background-color: #ffffff;
    border: 1px solid #CCCCCC;
    border-bottom: none;
    padding-bottom: 1px;
}

/* 设置企业采购下拉列表样式切换 */
.right_top_nav li:nth-of-type(6):hover .company-list {
    display: block;
    top: 31px;
}

/* 设置客户服务相对定位 */
.right_top_nav li:nth-of-type(3) {
    position: relative;
}

/* 设置客户服务样式 */
.right_top_nav .customer {
    position: relative;
    padding-left: 4px;
    line-height: 30px;
    height: 30px;
    border: 1px solid transparent;
    z-index: 999;
}

/* 设置客户服务列表样式 */
.right_top_nav .customer-list {
    display: none;
    width: 200px;
    height: 300px;
    line-height: 300px;
    text-align: center;
    background-color: #ffffff;
    position: absolute;
    border: 1px solid #CCCCCC;
    z-index: 99;
}

/* 设置客户服务移入时的效果 */
.right_top_nav li:nth-of-type(3):hover .customer {
    background-color: #ffffff;
    border: 1px solid #CCCCCC;
    border-bottom: none;
    padding-bottom: 1px;
}

/* 设置客户服务移入时客户服务列表的样式 */
.right_top_nav li:nth-of-type(3):hover .customer-list {
    display: block;
    top: 31px;
    right: 0px;
}

/* 设置网站导航绝对定位 */
.right_top_nav li:nth-of-type(2) {
    position: relative;
}

/* 设置网站导航样式 */
.right_top_nav .net_intro {
    position: relative;
    padding-left: 4px;
    line-height: 30px;
    height: 30px;
    border: 1px solid transparent;
    z-index: 999;
}

/* 设置网站导航下拉列表样式 */
.right_top_nav .net_intro_list {
    display: none;
    width: 1200px;
    height: 200px;
    line-height: 200px;
    text-align: center;
    background-color: #ffffff;
    position: absolute;
    border: 1px solid #CCCCCC;
    z-index: 99;
}

/* 设置网站导航移入时网站导航文字信息效果 */
.right_top_nav li:nth-of-type(2):hover .net_intro {
    background-color: #ffffff;
    border: 1px solid #CCCCCC;
    border-bottom: none;
    padding-bottom: 1px;
}

/* 设置网站导航移入时网站导航列表效果 */
.right_top_nav li:nth-of-type(2):hover .net_intro_list {
    display: block;
    top: 31px;
    right: -60px;
}

/* 设置字体颜色为红色 */
.font_red {
    color: #F10215 !important;
}

/* 设置垂直间隔样式 */
.vertical {
    float: right;
    color: #CCCCCC;
    margin: 0 6px;
    font-size: 1px;
    /* 垂直居中显示 */
    line-height: 32px;
}
上一篇:[css] 为什么说不提倡用1px的小尺寸图片做背景平铺?


下一篇:4-11 盒子模型(CSS的重点)