【Web前端实操21】商城官网_白色导航

        今日份实现白色导航栏部分,也就是第三部分,效果如图中划线所示:        本次实现代码如之前的全局样式不再赘述,如有需要可以去我博客的Web前端实操19或者20自行查看。

        本次主要更新mi.css和index.htm。

实现导航栏所需要的CSS样式知识小贴士:
  1. 设置菜单项的样式:
    • 设置菜单项为display: inline-block;,使菜单项在一行显示。
    • 设置菜单项的padding属性来调整菜单项的内边距,以增加菜单项的可点击区域。
    • 设置菜单项的背景颜色、字体颜色、字体大小等样式。
    • 设置菜单项之间的间距,可以使用margin-right属性来设置右边距。
  2. 设置菜单项悬停时的样式:
    • 使用hover伪类选择器来设置鼠标悬停时的样式。
    • 可以修改背景颜色、字体颜色等样式,以突出鼠标悬停的菜单项。
  3. 设置导航栏的样式:
    • 设置导航栏的宽度、高度、背景颜色等样式。
    • 可以使用display: flex;来将导航栏中的菜单项水平排列,并可以使用justify-content属性来调整菜单项的对齐方式。
  4. 设置导航栏的位置:
    • 可以使用position属性来设置导航栏的定位方式,如fixedabsolute等。
    • 使用toprightbottomleft属性来调整导航栏的位置。
  5. 其他样式调整:
    • 可以使用box-shadow属性来给导航栏添加阴影效果。
    • 可以使用transition属性来调整菜单项悬停时的过渡效果。

        以上是实现导航栏所需要的一些CSS样式知识,具体样式效果可以根据实际需求进行调整。

相关代码如下:
mi.css:
/* 头部样式开始 */
.header{
    width: 100%;
    height: 120px;
    overflow: hidden;
    position: relative;
}
 
.header img{
    height: 120px;
    /* 图片,以中间开始渲染 */
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
/* 头部样式结束 */
 
/* 黑色导航样式开始 */
/* 黑色背景容器主体,设置宽高,设置行高,设置背景色,设置文字大小 */
.black-nav{
    width: 100%;
    height: 40px;
    line-height: 40px;
    background-color: #333;
    font-size: 12px;
}
/* 设置内容居中和宽度 */
.wrap{
    width: 1226px;
    margin: 0 auto;
}
/* 设置左导航整体往往左浮动 */
.black-nav-left{
    float: left;
}
/* 设置右导航整体往右浮动 */
.black-nav-right{
    float: right;
}
/* 设置两个导航栏里面的列表左浮动,相对定位 */
.black-nav li{
    float: left;
    position: relative;
}
/* 设置超链接文本颜色 */
.black-nav a{
    color: #b0b0b0;
}
/* 设置超链接旁边连接符的颜色和边距 */
.black-nav span{
    color: #424242;
    margin: 0 3.6px;
}
/* 设置下载APP超链接下的图片块效果 */
.download{
    /* 设定宽高、背景色以及绝对定位,离左边的距离和上边的距离 */
    width: 124px;
    height: 0;
    background: #fff;
    /* 有阴影效果 */
    box-shadow: 0 1px 5px #aaa;
    position: absolute;
    top: 40px;
    left: 50%;
    /* 调整图片块的位置 */
    margin-left: -62px;
    overflow:hidden;
    /* 过渡效果 */
    transition: all 0.3s;
}
/* 设置图片宽度,调整图片内边距 */
.download img{
    width: 90px;
    margin: 18px auto 0;
}
/* 设置图片下面的文字背景、字体大小和行高 */
.download p{
    color: #333;
    font-size: 14px;
    line-height: 14px;
}
/* 鼠标悬停的效果 
具体的大小可以自己调定*/
.black-nav-left li:hover>.download{
    height: 140px;
}
/* 添加箭头,宽高设置为0,边框设置
绝对定位,设置居中 */
.stri{
    width: 0;
    height: 0;
    border-bottom: 8px solid #fff;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    position:absolute;
    bottom: 0;
    left: 50%;
    margin-left: -8px;
    display: none;
}
.black-nav-left>li:hover>.stri{
    display: block;
}
/* 购物车滑下去的效果设置,宽高背景色,边距,相对定位 */
.cart{
    width: 120px;
    height: 40px;
    background: #424242;
    margin-left: 25px;
    position: relative;
}
/* 设置鼠标悬停在购物车上的背景色,为白色 */
.cart:hover{
    background: #fff;
}
/* 设置超链接文本为橘色 */
.cart:hover>a{
    color: #ff6700;
}
/* 设置购物车文本样式正常,右边距为8px */
.cart i{
    font-style: normal;
    margin-right: 8px;
}
/* 设置“购物车中还没有商品,赶紧选购吧”的块结构的宽高背景色,阴影效果等 */
.cart-list{
    width: 316px;
    height: 0;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,0.15);
    position: absolute;
    right: 0;
    top: 40px;
    color: #424242;
    overflow: hidden;
    transition: all 0.3s;
    line-height: 100px;
}
/* 当鼠标悬停在购物车上时会出现“购物车中还没有商品,赶紧选购吧”的提示 */
.cart:hover>.cart-list{
    height: 100px;
} 
/* 黑色导航样式结束 */

/* 白色导航样式开始 */
/* 设置白色导航主体容器宽高北京和绝对定位 */
.white-nav{
    width: 100%;
    height: 100px;
    background: #fff;
    position: relative;
}
/* 设置logo图标模块的宽高、背景色,左浮动等 */
.logo{
  width: 55px;
  height: 55px;
  background-color: #ff6700;
  float: left;
  margin-top: 22.5px;
  position: relative;
  overflow: hidden;
}
.logo>img{
    width: 100%;
    height: 100%;
    position:absolute;
    top: 0;
    transition: all 0.2s;
}
.mi-home{
    left: -55px;
}
.mi-logo{
    left: 0;
}
.logo:hover>.mi-home{
    left: 0;
}
.logo:hover>.mi-logo{
    left: 55px;
}
.nav-bar{
    width: 875px;
    height: 100px;
    line-height: 100px;
    float: left;
}
.search{
    width: 296px;
    height: 100px;
    float: right;
}
.nav-bar li{
    float: left;
}
.nav-bar>ul>li>a{
    color: #333;
    padding: 0 10px;
}

.nav-bar>ul>li>a:hover{
    color: #ff6700;
}

.nav-bar>ul>li:first-child img{
    margin-top: 22.5px;
}
/* 设置搜索栏的宽高,边框样式等等 */
.search input{
    width: 244px;
    height: 50px;
    border:1px solid #e0e0e0;
    margin-top: 25px;
    /* 去掉选中的边框 */
    outline: none;
    padding: 0 10px;
    box-sizing: border-box;
    border-right: 0;
}
/* 完善搜索栏旁边的搜索按钮,设置宽高背景色等 */
.search button{
    width: 52px;
    height: 50px;
    background: #fff;
    border:1px solid #e0e0e0;
    float: right;
    margin-top: 25px;
}
/* 使搜索栏旁边的搜索按钮,鼠标悬停在上面有橘色背景色等 */
.search button:hover{
    background: #ff6700;
    color: #fff;
}
/* 设置鼠标悬停在小米手机上会出现的内容板块 */
.nav-bar-list{
    width: 100%;
    height: 229px;
    background: #fff;
    border-top: 1px solid #eee;
    box-shadow: 0 3px 4px rgba(0,0,0,0.1);
    position: absolute;
    left: 0;
    top: 100px;
    display: none;
}
/* 设置悬停在小米手机上的内容为块 */
.nav-bar li:hover .nav-bar-list{
    display: block;
}
/* 设置小米手机下的图片内容模式 */
.img-box{
    width: 100%;
    height: 110px;
    margin-top: 35px;
    border-right: 1px solid #eee;
    box-sizing: border-box;
    margin-bottom: 16px;
}
/* 设置图片之间的边距 */
.nav-bar-list li:last-child .img-box{
    border-right: 0;
}
/* 设置图片下面的文字大小和行高 */
.nav-bar-list p{
    font-size: 12px;
    line-height: 20px;
}
/* 设置小米手机的名字颜色 */
.name{
    color: #333;
}
/* 设置小米手机的价格颜色 */
.price{
    color: #ff6700;
}
/* 白色导航样式结束 */
index.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/mi.css">
    <!-- 引用图标的界面 -->
    <link rel="stylesheet" href="css/iconfont/iconfont.css">
</head>
<body>
    <!-- 头部广告条开始 -->
    <div class="header">
        <a href="#">
            <img src="img/top.jpg" alt="顶部广告条">
        </a>
    </div>
    <!-- 头部广告条结束 -->
    <!-- 黑色导航部分开始 -->
    <!-- 1、黑色背景,主容器 
        2、内容部分要居中显示,容器进行处理
        3、左导航栏和右导航
        4、动画——有一个图片出现,右导航有个效果
    -->
    <div class="black-nav">
        <div class="wrap">
            <ul class="black-nav-left">
                <li><a href="#">小米商城</a><span>|</span></li>
                <li><a href="#">MIUI</a><span>|</span></li>
                <li><a href="#">Lot</a><span>|</span></li>
                <li><a href="#">云服务</a><span>|</span></li>
                <li><a href="#">天星数科</a><span>|</span></li>
                <li><a href="#">有品</a><span>|</span></li>
                <li><a href="#">小爱开放平台</a><span>|</span></li>
                <li><a href="#">企业团购</a><span>|</span></li>
                <li><a href="#">资质证照</a><span>|</span></li>
                <li><a href="#">协议规则</a><span>|</span></li>
                <li>
                    <a href="#">下载APP</a>
                    <span>|</span>
                    <!-- 点击下载APP会出现一个图案 -->
                    <div class="download">
                        <img src="img/download.png" alt="下载二维码">
                        <p>小米商城APP</p>
                    </div>
                    <!-- 点击下载APP出现的图框还有个箭头呢 -->
                    <div class="stri"></div>
                </li>
                <li><a href="#">智能生活</a><span>|</span></li>
                <li><a href="#">Select Location</a><span>|</span></li>
            </ul>
            <ul class="black-nav-right">
                <li><a href="#">登录</a><span>|</span></li>
                <li><a href="#">注册</a><span>|</span></li>
                <li><a href="#">消息通知</a><span>|</span></li>
                <li class="cart">
                    <a href="#">
                        <span class="iconfont">&#xe607;</span>
                        <i>购物车(0)</i>
                    </a>
                    <!-- 点击购物车会出现相应文字和效果 -->
                    <div class="cart-list">
                        购物车中还没有商品,赶紧选购吧
                    </div>
                </li>
            </ul>
        </div>
    </div>
    <!-- 黑色导航部分结束 -->
    <!-- 白色导航开始 -->
    <div class="white-nav">
        <div class="wrap">
            <div class="logo">
                <img src="./img/mi-home.png" alt="mi-home">
                <img src="./img/mi-logo.png" alt="mi-log">
            </div>
            <div class="nav-bar">
                <ul>
                    <li><a href="#"><img src="./img/zzxsh.gif" alt=""></a></li>
                    <li>
                        <a href="#">小米手机</a>
                        <div class="nav-bar-list">
                            <div class="wrap">
                                <ul>
                                    <li>
                                        <a href="#">
                                            <div class="img-box">
                                            <img src="./img/phone.png" alt="">
                                            </div>
                                            <p class="name1">小米10至尊纪念版</p>
                                            <p class="price1">5299元起</p>
                                        </a>
                                    </li>
                                    <li>
                                        <a href="#">
                                            <div class="img-box">
                                            <img src="./img/phone.png" alt="">
                                            </div>
                                            <p class="name1">小米10至尊纪念版</p>
                                            <p class="price1">5299元起</p>
                                        </a>
                                    </li>
                                    <li>
                                        <a href="#">
                                            <div class="img-box">
                                            <img src="./img/phone.png" alt="">
                                            </div>
                                            <p class="name1">小米10至尊纪念版</p>
                                            <p class="price1">5299元起</p>
                                        </a>
                                    </li>
                                    <li>
                                        <a href="#">
                                            <div class="img-box">
                                            <img src="./img/phone.png" alt="">
                                            </div>
                                            <p class="name1">小米10至尊纪念版</p>
                                            <p class="price1">5299元起</p>
                                        </a>
                                    </li>
                                </ul>
                            </div>
                        </div>
                    </li>
                    <li><a href="#">Redmi红米</a></li>
                    <li><a href="#">电视</a></li>
                    <li><a href="#">笔记本</a></li>
                    <li><a href="#">家电</a></li>
                    <li><a href="#">路由器</a></li>
                    <li><a href="#">智能硬件</a></li>
                    <li><a href="#">服务</a></li>
                    <li><a href="#">社区</a></li>
                </ul>
            </div>
            <div class="search">
                <input type="text" value="赢手机,分一亿">
                <!-- 插入放大镜也就是搜索的图标 -->
                <button class="iconfont">&#xe63d;</button>
                <div class="search-list"></div>
            </div>
        </div>
    </div>
    <!-- 白色导航结束 -->
</body>
</html> 

​
实现效果如下:

        本次界面实现是在Edge浏览器上,有关于小米logo的显示不够完全,大家可以放到Chrome浏览器和其他浏览器自主调试。

完整页面:

具体细节:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/362892.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Handler 消息机制

1. 概述 Android 的消息机制主要是指 Handler 的运行机制&#xff0c;以及 Handler 所附带的 MessageQueue 和 Looper 的工作过程。 Handler、MessageQueue、Looper 这三者实际上是一个整体&#xff0c;只不过在开发过程中比较多地接触 Handler 而已。 Handler 的主要作用是将…

Redis单机-主从集群-哨兵集群-分片集群 搭建教程

Redis集群 本章是基于CentOS7下的Redis集群教程&#xff0c;包括&#xff1a; 单机安装RedisRedis主从Redis分片集群 1.单机安装Redis 首先需要安装Redis所需要的依赖&#xff1a; yum install -y gcc tclredis-6.2.4.tar.gz 然后将Redis安装包上传到虚拟机的任意目录&am…

Python编程实验一:流程控制结构

目录 一、实验目的与要求 二、实验内容 三、主要程序清单和程序运行结果 第1题 第2题 第3题 第4题 四、实验结果分析与体会 一、实验目的与要求 &#xff08;1&#xff09;通过本次实验&#xff0c;学生应掌握多分支语句 if …elif…else结构的用法&#xff1b; &…

丰富福利等你来拿!第七届世界智能大会·中国华录杯数据湖算法大赛开启招募!

由天津市委网信办、天津市工业和信息化局、天津市津南区人民政府主办&#xff0c;北京易华录信息技术股份有限公司、天津华易智诚科技发展有限公司承办的“第七届世界智能大会中国华录杯数据湖算法大赛”开启招募。 本次大赛紧紧围绕数据“收、存、治、用、易”为理念&#xf…

低码大前端 - 混合云集群部署 PagePlug

前情提要 老师之前布置了什么作业&#xff0c;完全忘了&#xff0c;本来觉得写作业可能也就一两个小时的事情&#xff0c;结果搞了半天&#xff0c;有一半的作业题目都没找到&#xff0c;mmp, 之前拖延症&#xff0c;搞到心态都炸了&#xff0c;今天不管怎么说都要搞定&#x…

Redis核心技术与实战【学习笔记】 - 9.如何避免单线程模型的阻塞

概述 Redis 被广泛应用的原因是因为它支持高性能访问。所以&#xff0c;我们要重视所有可能影响 Redis 性能的因素&#xff08;如命令操作、系统配置、关键机制、硬件配置等&#xff09;。 影响 Redis 性能的 5 大方面的潜在因素分别是&#xff1a; Redis 内部的阻塞式操作C…

测试大佬是怎么看待测试用例设计的

前言 最近干的最多的事情就是设计测试用例、评审测试用例了&#xff0c;于是我不禁又想到了一个经典的问题&#xff1a;如何设计出优秀的测试用例&#xff1f; 可能有些童鞋看到这个问题会有些不以为然&#xff0c;这有什么好想的&#xff1f;干个测试谁还不会设计测试用例&…

41、WEB攻防——通用漏洞XMLXXE无回显DTD实体伪协议代码审计

文章目录 XXE原理&探针&利用XXE读取文件XXE带外测试XXE实体引用XXE挖掘XXE修复 参考资料&#xff1a;CTF XXE XXE原理&探针&利用 XXE用到的重点知识是XML&#xff0c;XML被设计为传输和存储数据&#xff0c;XML文档结构包括XML声明、DTD文档类型定义&#xf…

XVC767AE102 3BHB007209R0102

XVC767AE102 3BHB007209R0102 XVC767AE102 3BHB007209R0102 GPS99808模块在汽车防盗系统中的应用 ... 详细介绍了 leadtek公司最新款oem模块gps9808在新型智能防盗系统中的 ... 定位模块、cpu控制模块、gps通信模块、传感器检测模块、声光报警模块、电源管理模块 ... 功能…

k8s之基础组件说明

前言 K8S&#xff0c;全称 Kubernetes&#xff0c;是一个用于管理容器的开源平台。它可以让用户更加方便地部署、扩展和管理容器化应用程序&#xff0c;并通过自动化的方式实现负载均衡、服务发现和自动弹性伸缩等功能。 具体来说&#xff0c;Kubernetes 可以将应用程序打包成…

sqli-labs-master靶场训练笔记(1-22|新手村)

2024.1.21 level-1 &#xff08;单引号装饰&#xff09; 先根据提示建立一个get请求 在尝试使用单个单引号测试&#xff0c;成功发现语句未闭合报错 然后反手一个 order by 得到数据库共3列&#xff0c;-- 后面加字母防止浏览器吃掉 -- 操作&#xff08;有些会&#xff09…

全链路压测的关键点是什么?

全链路压测是一种重要的性能测试方法&#xff0c;用于评估应用程序或系统在真实生产环境下的性能表现。通过模拟真实用户行为和流量&#xff0c;全链路压测能够全面评估系统在不同负载下的稳定性和性能表现。本文将介绍全链路压测的关键点&#xff0c;以帮助企业更好地理解和应…

IT行业证书大揭秘:哪些证书含金量最高?

文章目录 &#x1f4d6; 介绍 &#x1f4d6;&#x1f4d2; 证书 &#x1f4d2; &#x1f4d6; 介绍 &#x1f4d6; 在IT行业&#xff0c;有许多证书被认为是含金量高的&#xff0c;可以帮助个人在职业发展中取得重要的竞争优势。以下是一些IT行业中被认为含金量高的证书&#x…

Docker基础知识

1、什么是Docker&#xff1f;Docker解决了什么问题 一个项目中&#xff0c;部署时需要依赖于node.js、Redis、RabbitMQ、MySQL等&#xff0c;这些服务部署时所需要的函数库、依赖项各不相同&#xff0c;甚至会有冲突。给部署带来了极大的困难。 所以引入了Docker Docker为了…

系统架构设计师-21年-下午答案

系统架构设计师-21年-下午答案 更多软考知识请访问 https://ruankao.blog.csdn.net/ 试题一必答&#xff0c;二、三、四、五题中任选两题作答 试题一 (25分) 说明 某公司拟开发一套机器学习应用开发平台&#xff0c;支持用户使用浏览器在线进行基于机器学习的智能应用开发…

ThreadX系列note-前言

什么是 Azure RTOS ThreadX Azure RTOS ThreadX 是 Microsoft 提供的高级工业级实时操作系统 (RTOS)。它是专门为深度嵌入式实时 IoT 应用程序设计的。 Azure RTOS ThreadX 的特性 Azure RTOS ThreadX 提供高级计划、通信、同步、计时器、内存管理和中断管理功能。此外&#…

【SpringBoot】SpringBoot的自动配置原理

&#x1f4dd;个人主页&#xff1a;五敷有你 &#x1f525;系列专栏&#xff1a;SpringBoot ⛺️稳重求进&#xff0c;晒太阳 自动配置 啥叫自动配置呢&#xff1f;简单说就是springboot根据我们开发者的行为猜测你要做什么事情&#xff0c;然后把你要用的bean都给你准备…

tcpdump 抓包无法落盘

文章目录 问题背景解决办法 问题背景 在嵌入式设备中(Linux系统)&#xff0c;为了分析两个网络节点的通讯问题&#xff0c;往往需要用到tcpdump&#xff0c;抓一个.pcap的包在PC端进行分析。博主在实际操作中发现&#xff0c;抓包无法实时落盘。 解决办法 # 下面的命令是写在…

集线器、交换机、路由器工作原理区别

集线器、交换机、路由器这三种设备是相似的&#xff0c;但是他们处理数据的方式有所不同。 1 集线器 集线器的目的是将内部网络上所有网络设备连接在一起。它具有多个端口&#xff0c;可以接受来自网络设备的以太网连接。集线器不过滤任何数据、也不知道该将数据发到什么地方…

友思特应用 | 微观指尖世界:OCT成像应用之3D指纹提取与识别

欢迎访问官网&#xff0c;探索丰富案例&#xff1a; OCT成像系统 | 光学相干断层扫描 | 谱域OCT | 扫频OCT | 广州友思特科技有限公司 关注“友思特机器视觉与光电”公众号、加入行业交流群或直接联系我们&#xff0c;轻松收获更多技术干货 导读 数字化生活已离不开指纹识别认…