博主信息
博文 25
粉丝 1
评论 1
访问量 26160
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
购物车实例页面写法(仿京东商城)--PHP中文网线上培训十期0101
高的PHP十期培训学习笔记
原创
1505人浏览过

今天根据在PHP中文网所学的前端知识来完成一个商城购物车的页面的编写,这里参照的是京东的购物车。

参照页面

首先分析页面结构

其中购物车中的商品数量在实际使用情况中应该是不固定的,所以这里需要使用flex布局来写,使用列对齐的方式写出来一条,然后复制;

按照分板图写出HTML代码

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>购物车</title>
  6. <link rel="stylesheet" href="shop_public_Cart.css">
  7. </head>
  8. <body>
  9. <div class="shop-public-cart">
  10. <!-- 菜单和地址-->
  11. <div class="nav-top">
  12. <span>全部商品 3</span>
  13. <div>
  14. <span>配送到:</span>
  15. <span>湖南省岳阳市岳阳楼区</span>
  16. </div>
  17. </div>
  18. <!-- 抬头-->
  19. <div class="rise">
  20. <span>
  21. <input type="checkbox" id="all-Choice" checked>
  22. <label for="all-Choice">全选</label>
  23. </span>
  24. <span>商品</span>
  25. <span class="W120">单价</span>
  26. <span class="W120">数量</span>
  27. <span class="W120">小计</span>
  28. <span class="W120">操作</span>
  29. </div>
  30. <!-- 商品列表-->
  31. <div class="list">
  32. <div>
  33. <span>
  34. <label><input type="checkbox" name="choose" checked></label>
  35. </span>
  36. <span><a href=""><img src="../../../static/images/1.jpg" alt=""></a></span>
  37. <span><a href="">达尔优(dareu)牧马人五代EM915KBS有线鼠标</a></span>
  38. <span class="W120">五代黑色</span>
  39. <span class="W120">&yen;199.00</span>
  40. <span class="W120"><label><input type="number" name="count" value="1" min="1"></label></span>
  41. <span class="W120">&yen;199.00</span>
  42. <span class="W120">删除</span>
  43. </div>
  44. <div>
  45. <span>
  46. <label><input type="checkbox" name="choose" checked></label>
  47. </span>
  48. <span><a href=""><img src="../../../static/images/1.jpg" alt=""></a></span>
  49. <span><a href="">达尔优(dareu)牧马人五代EM915KBS有线鼠标</a></span>
  50. <span class="W120">五代黑色</span>
  51. <span class="W120">&yen;199.00</span>
  52. <span class="W120"><label><input type="number" name="count" value="1" min="1"></label></span>
  53. <span class="W120">&yen;199.00</span>
  54. <span class="W120">删除</span>
  55. </div>
  56. <div>
  57. <span>
  58. <label><input type="checkbox" name="choose" checked></label>
  59. </span>
  60. <span><a href=""><img src="../../../static/images/1.jpg" alt=""></a></span>
  61. <span><a href="">达尔优(dareu)牧马人五代EM915KBS有线鼠标</a></span>
  62. <span class="W120">五代黑色</span>
  63. <span class="W120">&yen;199.00</span>
  64. <span class="W120"><label><input type="number" name="count" value="1" min="1"></label></span>
  65. <span class="W120">&yen;199.00</span>
  66. <span class="W120">删除</span>
  67. </div>
  68. <div>
  69. <span>
  70. <label><input type="checkbox" name="choose" checked></label>
  71. </span>
  72. <span><a href=""><img src="../../../static/images/1.jpg" alt=""></a></span>
  73. <span><a href="">达尔优(dareu)牧马人五代EM915KBS有线鼠标</a></span>
  74. <span class="W120">五代黑色</span>
  75. <span class="W120">&yen;199.00</span>
  76. <span class="W120"><label><input type="number" name="count" value="1" min="1"></label></span>
  77. <span class="W120">&yen;199.00</span>
  78. <span class="W120">删除</span>
  79. </div>
  80. </div>
  81. <!-- 结算-->
  82. <div class="buy">
  83. <span>已选择<a>3</a>件商品</span>
  84. <span>总价:<a>617.90元</a></span>
  85. <button>去结算</button>
  86. </div>
  87. </div>
  88. </body>
  89. </html>

增加公共样式后的效果

按顺序先写顶部的样式

  1. /*购物车*/
  2. .shop-public-cart {
  3. width: 1200px;
  4. margin: 30px auto;
  5. background-color: #fff;
  6. padding: 15px;
  7. box-sizing: border-box;
  8. }
  9. /*菜单和地址*/
  10. .shop-public-cart > .nav-top {
  11. display: flex;
  12. justify-content: space-between;
  13. height: 30px;
  14. }
  15. .shop-public-cart > .nav-top > span:first-of-type {
  16. color: #E2231A;
  17. font-size: 16px;
  18. border-bottom: 1px solid #E2231A;
  19. }
  20. .shop-public-cart > .nav-top > div {
  21. color: #666666;
  22. }
  23. .shop-public-cart > .nav-top > div > span:last-of-type {
  24. border: 1px solid #CECBCE;
  25. padding: 5px;
  26. line-height: 23px;
  27. }

再写项目分类的样式

  1. /*公共宽度*/
  2. .W120 {
  3. width: 120px;
  4. }
  5. /*抬头*/
  6. .shop-public-cart > .rise {
  7. display: flex;
  8. text-align: center;
  9. background: #f3f3f3;
  10. border: 1px solid #e9e9e9;
  11. height: 32px;
  12. align-items: center;
  13. margin-bottom: 10px;
  14. padding-left: 10px;
  15. }
  16. .shop-public-cart > .rise > span:nth-of-type(2) {
  17. flex: 1;
  18. }

这里添加了一个宽度值,用于小项目的宽度定位,这样显示更整齐

商品列表的样式

  1. /*商品列表*/
  2. .shop-public-cart > .list {
  3. display: flex;
  4. flex-direction: column;
  5. }
  6. .shop-public-cart > .list > div {
  7. height: 120px;
  8. display: flex;
  9. align-items: center;
  10. background-color: #fef4e8;
  11. border-bottom: 1px solid #999;
  12. }
  13. .shop-public-cart > .list > div img {
  14. width: 80px;
  15. height: 80px;
  16. border: 1px solid #eee;
  17. }
  18. .shop-public-cart > .list > div > span {
  19. padding: 10px;
  20. box-sizing: border-box;
  21. text-align: center;
  22. }
  23. .shop-public-cart > .list > div > span input {
  24. width: 60px;
  25. border: 1px solid #CECBCE;
  26. }
  27. .shop-public-cart > .list > div > span:nth-of-type(3) {
  28. flex: 1;
  29. }

一条商品调试好后我们就可以在HTML代码中复制这个商品的代码,查看多条商品信息时的显示状态

没问题后我们继续写提交功能

  1. /*结算*/
  2. .shop-public-cart > .buy {
  3. border: 1px solid #e9e9e9;
  4. height: 50px;
  5. display: flex;
  6. justify-content: end;
  7. align-items: center;
  8. margin-top: 20px;
  9. }
  10. .shop-public-cart > .buy > button {
  11. width: 90px;
  12. height: 50px;
  13. font-size: 20px;
  14. text-align: center;
  15. line-height: 50px;
  16. border: none;
  17. color: white;
  18. font-weight: 700;
  19. background-color: #E2231A;
  20. }
  21. .shop-public-cart > .buy > span {
  22. padding: 0 20px;
  23. }
  24. .shop-public-cart > .buy > span > a {
  25. color: #E2231A;
  26. font-weight: 700;
  27. margin: 0 5px;
  28. }

引入网站的头部和尾部样式表

  1. @import "../public_header/public_header.css";
  2. @import "../public_footer/public_footer.css";

引入网站的头部和尾部HTML代码

头部

  1. <nav class="public-header">
  2. <a href="">网站首页</a>
  3. <a href="">专题</a>
  4. <a href="">网站导航</a>
  5. <a href="">二手商品</a>
  6. <a href="">讨论区</a>
  7. <span>
  8. <a href=""><i class="iconfont icon-huiyuan2"></i>登陆</a>
  9. <a href="">免费注册</a>
  10. </span>
  11. </nav>

尾部

  1. <footer class="public-footer">
  2. <div>
  3. <a href="">简介</a>
  4. <a href="">联系我们</a>
  5. <a href="">招聘信息</a>
  6. <a href="">友情链接</a>
  7. <a href="">用户服务协议</a>
  8. <a href="">隐私权声明</a>
  9. <a href="">法律投诉声明</a>
  10. </div>
  11. <div><span>LOGO</span></div>
  12. <div>
  13. <p>2019 fengniao.com. All rights reserved . 安徽闹着玩有限公司(无聊网)版权所有</p>
  14. <p>皖ICP证150110号 京ICP备14323013号-2 皖公网安备110108024357788号</p>
  15. <p>违法和不良信息举报电话: 0551-1234567 举报邮箱: admin@baidu.com</p>
  16. </div>
  17. <div>
  18. <p>关注公众号</p>
  19. <img src="../../../static/images/erwei-code.png" alt="">
  20. </div>
  21. </footer>

最终的效果

批改老师:天蓬老师天蓬老师

批改状态:合格

老师批语:这个购物车完成的相当出色
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学