小米商城界面项目HTML+CSS代码

打印 上一主题 下一主题

主题 1038|帖子 1038|积分 3114

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
        刚学前端,做了小米商城的界面练习,写完了把代码分享一下,内里可能有许多实现的不规范的地方,请各位大佬多指正!
实现效果

实现了大部分的鼠标交互效果,包罗字体变色,动画,滑动门等。
成品链接

完整实现效果可以直接在这里看:
https://johanacomlan.github.io/mi_website/
效果截图






实当代码

因为代码比较多,完整代码和用到的图片资源传到传到GitHub上了:
https://github.com/JohanaComlan/mi_website
导航栏部分实现

顶部广告和导航的HTML代码:
  1. <!-- 顶部广告 -->
  2.     <header>
  3.         <a href="https://www.mi.com/appdownload">
  4.             <img src="./images/ad_banner.jpg" alt="广告">
  5.         </a>
  6.     </header>
  7.     <!-- 顶部广告 -->
  8.     <!-- 导航 -->
  9.     <nav>
  10.         <div class="container">
  11.             <div class="topbar-nav">
  12.                 <a href="https://www.mi.com/html/index.html">小米商城</a>
  13.                 <span class="sep">|</span>
  14.                 <a href="https://home.miui.com/">MIUI</a>
  15.                 <span class="sep">|</span>
  16.                 <a href="https://iot.mi.com/">IoT</a>
  17.                 <span class="sep">|</span>
  18.                 <a href="https://i.mi.com/">云服务</a>
  19.                 <span class="sep">|</span>
  20.                 <a href="https://airstar.com/home">天星数科</a>
  21.                 <span class="sep">|</span>
  22.                 <a href="https://youpin.mi.com/">有品</a>
  23.                 <span class="sep">|</span>
  24.                 <a href="https://xiaoai.mi.com/">小爱开放平台</a>
  25.                 <span class="sep">|</span>
  26.                 <a href="https://qiye.mi.com/">企业团购</a>
  27.                 <span class="sep">|</span>
  28.                 <a href="https://www.mi.com/aptitude/list/?id=41">资质证照</a>
  29.                 <span class="sep">|</span>
  30.                 <a href="https://www.mi.com/shop/aptitude/list">协议规则</a>
  31.                 <span class="sep">|</span>
  32.                 <a href="https://www.mi.com/appdownload" class="download">
  33.                     <span>下载App</span>
  34.                     <div class="downloadQR">
  35.                         <img src="./images/download.png" alt="下载二维码">
  36.                     </div>
  37.                 </a>
  38.                 <span class="sep">|</span>
  39.                 <a href="https://xiaomishare.mi.com/?from=micom">智能生活</a>
  40.             </div>
  41.             <div class="topinfo-nav">
  42.                 <a
  43.                     href="#">登录</a>
  44.                 <span class="sep">|</span>
  45.                 <a
  46.                     href="#">注册</a>
  47.                 <span class="sep">|</span>
  48.                 <a href="#">消息通知</a>
  49.                 <a href="#">
  50.                     <span class="shoppingcar">
  51.                         <span class="iconfont icon-gouwuche"></span>
  52.                         <span>购物车(0)</span>
  53.                         <div class="tooltip">购物车中还没有商品,赶紧选购吧!</div>
  54.                     </span>
  55.                 </a>
  56.             </div>
  57.         </div>
  58.     </nav>
  59.     <!-- 导航 -->
  60.     <!-- 白色导航 -->
  61.     <div class="white-nav-background">
  62.         <div class="white-nav wrap">
  63.             <div class="logo">
  64.                 <span class="iconfont icon-xiaomi mi-logo"></span>
  65.                 <span class="iconfont icon-home mi-home"></span>
  66.             </div>
  67.             <ul class="white-nav-left">
  68.                 <li>
  69.                     <a href="#">小米手机</a>
  70.                     <div class="nav-detial-block">
  71.                         <div class="wrap">
  72.                             <ul>
  73.                                 <li>
  74.                                     <a href="#">
  75.                                         <div class="img-box">
  76.                                             <img src="./images/phone2.png" alt="">
  77.                                         </div>
  78.                                         <p class="name">小米10至尊纪念版</p>
  79.                                         <p class="price">5200元</p>
  80.                                     </a>
  81.                                 </li>
  82.                                 <li>
  83.                                     <a href="#">
  84.                                         <div class="img-box">
  85.                                             <img src="./images/phone2.png" alt="">
  86.                                         </div>
  87.                                         <p class="name">小米10至尊纪念版</p>
  88.                                         <p class="price">5200元</p>
  89.                                     </a>
  90.                                 </li>
  91.                                 <li>
  92.                                     <a href="#">
  93.                                         <div class="img-box">
  94.                                             <img src="./images/phone2.png" alt="">
  95.                                         </div>
  96.                                         <p class="name">小米10至尊纪念版</p>
  97.                                         <p class="price">5200元</p>
  98.                                     </a>
  99.                                 </li>
  100.                             </ul>
  101.                         </div>
  102.                     </div>
  103.                 </li>
  104.                 <li><a href="#">电脑</a></li>
  105.                 <li><a href="#">笔记本</a></li>
  106.                 <li><a href="#">家电</a></li>
  107.                 <li><a href="#">路由器</a></li>
  108.                 <li><a href="#">智能硬件</a></li>
  109.                 <li><a href="#">服务</a></li>
  110.                 <li><a href="#">社区</a></li>
  111.             </ul>
  112.             <div class="search">
  113.                 <input type="text" placeholder="元宇宙">
  114.                 <button class="iconfont icon-sousuo"></button>
  115.             </div>
  116.         </div>
  117.     </div>
  118.     <!-- 白色导航 -->
复制代码
对应的CSS:
  1. /* 顶部广告 start*/
  2. header {
  3.     width: 100%;
  4.     height: 120px;
  5.     /* 隐藏超出的部分 */
  6.     overflow: hidden;
  7.     position: relative;
  8. }
  9. header img {
  10.     height: 120px;
  11.     position: absolute;
  12.     /* 实现居中 */
  13.     /* 将 header img 元素的左边缘定位到其容器的左边缘的50%处 */
  14.     left: 50%;
  15.     /* 向左移动元素自身宽度的50%。 */
  16.     transform: translateX(-50%);
  17. }
  18. /* 顶部广告 end*/
  19. /* 黑色导航栏 start */
  20. nav {
  21.     height: 40px;
  22.     width: 100%;
  23.     margin: 0 auto;
  24.     line-height: 40px;
  25.     font-size: 12px;
  26.     /* 简化 margin 设置 */
  27.     background-color: #333;
  28. }
  29. nav .container {
  30.     max-width: 1226px;
  31.     width: 100%;
  32.     display: flex;
  33.     align-items: center;
  34.     /* 水平居中 */
  35.     margin: 0 auto;
  36. }
  37. .topinfo-nav {
  38.     /* 填充左侧的所有剩余空间,从而推到容器的最右边 */
  39.     margin-left: auto;
  40.     position: relative;
  41.     z-index: 60;
  42. }
  43. .topbar-nav {
  44.     position: relative;
  45. }
  46. /* 导航栏链接和分隔符样式 */
  47. .topinfo-nav a,
  48. .topbar-nav a {
  49.     color: #b0b0b0;
  50.     position: relative;
  51.     display: inline-block;
  52. }
  53. /* 鼠标悬停时链接字体颜色 */
  54. .topinfo-nav a:hover,
  55. .topbar-nav a:hover {
  56.     color: #fff;
  57. }
  58. /* 分隔符样式 */
  59. .sep {
  60.     color: #424242;
  61.     /* 设置分隔符的颜色 */
  62.     font-weight: bold;
  63.     /* 可选:加粗显示分隔符 */
  64.     padding: 0 5px;
  65. }
  66. .shoppingcar:hover {
  67.     background-color: #fff;
  68.     color: #FE6900;
  69. }
  70. .downloadQR {
  71.     display: none;
  72.     position: absolute;
  73.     left: 50%;
  74.     transform: translateX(-50%);
  75.     top: 110%;
  76.     width: 120px;
  77.     height: 120px;
  78.     background-color: #fff;
  79.     color: #424242;
  80.     box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  81.     z-index: 75;
  82. }
  83. .download:hover .downloadQR {
  84.     display: block;
  85. }
  86. .downloadQR img {
  87.     height: 100px;
  88.     margin: 10px auto;
  89. }
  90. .shoppingcar {
  91.     height: 40px;
  92.     display: inline-block;
  93.     background-color: #424242;
  94.     text-align: center;
  95.     padding: 0 20px;
  96.     margin-left: 5px;
  97.     position: relative;
  98. }
  99. .shoppingcar:hover .tooltip {
  100.     display: block;
  101. }
  102. .shoppingcar .tooltip {
  103.     position: absolute;
  104.     /* 绝对定位 */
  105.     display: none;
  106.     height: 70px;
  107.     line-height: 70px;
  108.     top: 100%;
  109.     /* 位于购物车按钮的下方 */
  110.     right: 0;
  111.     background-color: #fff;
  112.     color: #333;
  113.     font-size: 12px;
  114.     padding: 10px;
  115.     border: 1px solid #ccc;
  116.     box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  117.     white-space: nowrap;
  118. }
  119. /* 黑色导航栏 end */
  120. /* 白色导航栏 */
  121. .white-nav-background{
  122.     position: relative;
  123.     z-index: 50;
  124. }
  125. /* 白色导航栏下滑框 */
  126. .nav-detial-block{
  127.     display: none;
  128.     position: absolute;
  129.     z-index: 40;
  130.     top: 100px;
  131.     left: 0;
  132.     height: 229px;
  133.     width: 100%;
  134.     background-color: #ffffff;
  135.     border-top: 1px solid rgba(39, 39, 39, 0.1);
  136.     box-shadow: 0 3px 4px rgba(0,0,0,0.1);
  137. }
  138. .img-box img{
  139.     width: 160px;
  140.     padding-bottom:8px;
  141.     padding-top: 8px;
  142.     margin-right: 20px;
  143. }
  144. .nav-detial-block .wrap ul{
  145.     float: left;
  146. }
  147. .nav-detial-block .wrap li{
  148.     line-height: normal;
  149.     border-right: 1px solid #b0b0b045;
  150. }
  151. .white-nav {
  152.     height: 100px;
  153.     background-color: #fff;
  154.     line-height: 100px;
  155.     display: flex;
  156. }
  157. .white-nav li {
  158.     display: inline-block;
  159.     margin-left: 10px;
  160.     margin-top: 5px;
  161. }
  162. .white-nav li a {
  163.     color: #424242;
  164.     z-index: 10;
  165.     position: relative;
  166.     font-size: 16px;
  167.     padding-left: 15px;
  168. }
  169. .white-nav-left {
  170.     margin-left: 200px;
  171. }
  172. .white-nav-left li a:hover {
  173.     color: #FE6900;
  174.     transition: color 0.2s;
  175. }
  176. .white-nav-left li:hover .nav-detial-block{
  177.     display: block;
  178. }
  179. .white-nav .logo {
  180.     width: 50px;
  181.     height: 50px;
  182.     background-color: #FE6900;
  183.     border-radius: 20px;
  184.     margin: auto 0;
  185.     position: relative;
  186.     line-height: 50px;
  187.     display: flex;
  188.     overflow: hidden;
  189. }
  190. .white-nav .logo span {
  191.     font-size: 30px;
  192.     color: #fff;
  193.     position: absolute;
  194.     transition: all 0.2s;
  195. }
  196. .white-nav .logo .mi-logo {
  197.     left: 10px;
  198. }
  199. .white-nav .logo .mi-home {
  200.     right: 100%;
  201. }
  202. .white-nav .logo:hover .mi-logo {
  203.     left: 100%;
  204. }
  205. .white-nav .logo:hover .mi-home {
  206.     right: 10px;
  207. }
  208. .search {
  209.     margin-left: auto;
  210.     position: relative;
  211.     display: flex;
  212.     align-items: center;
  213.     transition: border-color 0.2s;
  214. }
  215. .search input,
  216. .search button {
  217.     border: 1px solid #e0e0e0;
  218.     border-radius: 0%;
  219.     background-color: #fff;
  220. }
  221. .search input {
  222.     padding: 0 10px;
  223.     height: 48px;
  224.     width: 223px;
  225.     border-right: 0;
  226.     outline: none;
  227. }
  228. .search button {
  229.     width: 52px;
  230.     height: 50px;
  231.     color: #616161;
  232.     font-weight: 700;
  233. }
  234. .search button:hover {
  235.     background-color: #FE6900;
  236.     color: #fff;
  237. }
  238. .search:hover input,
  239. .search:hover button {
  240.     border-color: #b0b0b0;
  241. }
  242. .search:focus-within input,
  243. .search:focus-within button {
  244.     border-color: #FE6900;
  245. }
  246. /* 白色导航栏 end*/
复制代码
参考

实现思路参考了这个课,但实当代码不一样。
https://www.bilibili.com/video/BV1iM4y117yH/?spm_id_from=333.1007.top_right_bar_window_custom_collection.content.click&vd_source=d719979df761c70ec6ee171ae3145870

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

商道如狼道

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表