Blogger Information
Blog 119
fans 3
comment 1
visits 94610
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
flex布局(弹性布局)实战仿PHP中文网手机页面
赵大叔
Original
779 people have browsed it

效果展示地址:
仿PHP中文网手机页面

flex布局(弹性布局)实战仿PHP中文网手机页面

1.1 头部header: 用户头像、logo 、用户导航,水平排列

1.2 轮播图banner:可点图片a+img

1.3 导航nav:2个无序列表ul垂直排列。每个ul中4个列表li水平排列。li内是可点击a的1张图片img和图片说明span。

1.4 主体main:主体main分为:推荐课程recomment、最新更新rupdate、最新文章article、最新博文blog、最新问答quan五部分垂直排列。

2、html代码

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>m.php.cn</title>
  6. <link rel="stylesheet" href="./css/iconfont.css">
  7. <link rel="stylesheet" href="./css/m.php.cn.css">
  8. </head>
  9. <body>
  10. <header>
  11. <a href=""><img src="./img/profilephoto.jpg" alt=""></a>
  12. <a href=""><img src="./img/logo.png" alt=""></a>
  13. <span class="iconfont"></span>
  14. </header>
  15. <div class="banner">
  16. <a href=""><img src="./img/banner.png" alt=""></a>
  17. </div>
  18. <nav>
  19. <ul>
  20. <li>
  21. <a href="">
  22. <img src="./img/html.png" alt="">
  23. <span>HTML/CSS</span>
  24. </a>
  25. </li>
  26. <li>
  27. <a href="">
  28. <img src="./img/JavaScript.png" alt="">
  29. <span>JavaScript</span>
  30. </a>
  31. </li>
  32. <li>
  33. <a href="">
  34. <img src="./img/code.png" alt="">
  35. <span>服务端</span>
  36. </a>
  37. </li>
  38. <li>
  39. <a href="">
  40. <img src="./img/sql.png" alt="">
  41. <span>数据库</span>
  42. </a>
  43. </li>
  44. </ul>
  45. </nav>
  46. <main>
  47. <article class="recommend">
  48. <h3>推荐课程</h3>
  49. <section>
  50. <a href=""><img src="./img/recom1.jpg" alt=""></a>
  51. <a href=""><img src="./img/recom2.jpg" alt=""></a>
  52. </section>
  53. <section>
  54. <div>
  55. <a href=""><img src="./img/recom3.jpg" alt=""></a>
  56. <span>
  57. <a href="">CI框架30分钟极速入门</a>
  58. <span><i>中级</i>61226次播放</span>
  59. </span>
  60. </div>
  61. </section>
  62. </article>
  63. <article class="update">
  64. <h3>最新更新</h3>
  65. <section>
  66. <div>
  67. <a href=""><img src="./img/up1.png" alt=""></a>
  68. <span>
  69. <a href="">PHP快速操控Excel之PhpSpreadsheet</a>
  70. <span>老的PHPExcel已经停止更新了!目前最新的是使用phpOffice插件PhpSpreadsheet...</span>
  71. <span><i>中级</i>15011次播放</span>
  72. </span>
  73. </div>
  74. </section>
  75. </article>
  76. <article class="article">
  77. <h3>最新文章</h3>
  78. <section>
  79. <span>
  80. <a href="">sublime正则搜索替换修改数据的方法</a>
  81. <span><i>发布时间:</i>2020-04-11</span>
  82. </span>
  83. <a href=""><img src="./img/art1.jpg" alt=""></a>
  84. </section>
  85. <section>
  86. <a href="">更多内容</a>
  87. </section>
  88. </article>
  89. <article class="blog">
  90. <h3>最新博文</h3>
  91. <section>
  92. <span>
  93. Jquery+AJAX上传文件,无刷新上传并重命名文件...
  94. </span>
  95. <i>2020-04-11</i>
  96. </section>
  97. <section>
  98. <a href="">更多内容</a>
  99. </section>
  100. </article>
  101. <article class="questions_answers">
  102. <h3>最新问答</h3>
  103. <section>
  104. <span>
  105. 制定的学习计划在哪能找到 咋找不到呢?
  106. </span>
  107. <i>2020-04-11</i>
  108. </section>
  109. <section>
  110. <a href="">更多内容</a>
  111. </section>
  112. </article>
  113. </main>
  114. <footer>
  115. <div>
  116. <span class="iconfont"></span>
  117. <span>首页</span>
  118. </div>
  119. <div>
  120. <span class="iconfont"></span>
  121. <span>视频</span>
  122. </div>
  123. <div>
  124. <span class="iconfont"></span>
  125. <span>社区</span>
  126. </div>
  127. <div>
  128. <span class="iconfont"></span>
  129. <span>我的</span>
  130. </div>
  131. </footer>
  132. </body>
  133. </html>

3、css代码

  1. body {
  2. width: 768px;
  3. background-color: #EDEFF0;
  4. margin: auto;
  5. }
  6. /*头部样式*/
  7. header{
  8. width: 768px;
  9. height: 50px;
  10. background-color: #444444;
  11. /*转为flex*/
  12. display: flex;
  13. /*两端对齐*/
  14. justify-content: space-between;
  15. /*垂直方向居中排列*/
  16. align-items: center;
  17. position: fixed;
  18. top: 0;
  19. }
  20. /*设置用户头像/用户导航图标大小*/
  21. header > a:first-of-type > img {
  22. width: 30px;
  23. height: 30px;
  24. border-radius: 50%;
  25. margin: 5px 15px;
  26. }
  27. header > a:nth-of-type(2) > img {
  28. width: 90px;
  29. height: 50px;
  30. margin: 5px 15px;
  31. }
  32. header > .iconfont {
  33. color: white;
  34. font-size: 1.5rem;
  35. margin: 5px 15px;
  36. }
  37. /*轮播图*/
  38. .banner {
  39. display: flex;
  40. margin-top: 0;
  41. }
  42. .banner img {
  43. width: 768px;
  44. height: 280px;
  45. }
  46. /*导航区*/
  47. nav {
  48. background-color: #fff;
  49. display: flex;
  50. /*垂直,不换行*/
  51. flex-flow: column nowrap;
  52. }
  53. nav img {
  54. width: 45px;
  55. height: 49px;
  56. }
  57. nav > ul {
  58. display: flex;
  59. }
  60. nav ul li {
  61. flex: 1;
  62. list-style: none;
  63. }
  64. nav ul li a {
  65. display: flex;
  66. flex-flow: column wrap;
  67. align-items: center;
  68. margin: 10px;
  69. }
  70. nav ul li a span {
  71. margin-top: 5px;
  72. align-items: center;
  73. }
  74. /*主体内容区*/
  75. main {
  76. display: flex;
  77. flex-direction: column;
  78. }
  79. /*推荐课程区*/
  80. main > .recommend {
  81. display: flex;
  82. flex-direction: column;
  83. }
  84. main > .recommend > section:first-of-type {
  85. display: flex;
  86. justify-content: space-around;
  87. background-color: #fff;
  88. }
  89. main > .recommend > section:first-of-type img {
  90. width: 368px;
  91. height: 90px;
  92. }
  93. main > .recommend > section:nth-last-of-type(-n+2) div {
  94. display: flex;
  95. }
  96. main > .recommend > section:nth-last-of-type(-n+2) div img {
  97. width: 295px;
  98. height: 83px;
  99. margin: 8px;
  100. }
  101. main > .recommend > section:nth-last-of-type(-n+2) div > span {
  102. display: flex;
  103. flex-direction: column;
  104. margin: 8px;
  105. }
  106. main > .recommend > section:nth-last-of-type(-n+2) div > span > a {
  107. }
  108. main > .recommend > section:nth-last-of-type(-n+2) div > span > span {
  109. margin-top: 8px;
  110. }
  111. main > .recommend > section:nth-last-of-type(-n+2) div > span > span > i {
  112. width: 30px;
  113. height: 24px;
  114. background-color: #444444;
  115. color: white;
  116. border-radius: 10px;
  117. margin-right: 5px;
  118. }
  119. /*最新更新区*/
  120. main > .update {
  121. display: flex;
  122. flex-direction: column;
  123. }
  124. main > .update img {
  125. width: 299px;
  126. height: 82px;
  127. }
  128. main > .update section {
  129. display: flex;
  130. flex-direction: column;
  131. background-color: #fff;
  132. }
  133. main > .update section > div {
  134. height: 102px;
  135. display: flex;
  136. }
  137. main > .update section > div > span {
  138. display: flex;
  139. flex-direction: column;
  140. font-size: 0.8rem;
  141. margin-left: 15px;
  142. }
  143. main > .update section > div > span > span:first-of-type {
  144. margin: 10px auto;
  145. }
  146. main > .update section > div > span > span:last-of-type i {
  147. background-color: #444444;
  148. color: white;
  149. border-radius: 10px;
  150. margin-right: 5px;
  151. }
  152. /*最新文章*/
  153. main > .article img {
  154. width: 222px;
  155. height: 69px;
  156. }
  157. main > .article {
  158. display: flex;
  159. flex-direction: column;
  160. }
  161. main > .article > section {
  162. display: flex;
  163. justify-content: space-between;
  164. background-color: #fff;
  165. }
  166. main > .article > section > span {
  167. display: flex;
  168. flex-direction: column;
  169. justify-content: space-around;
  170. margin-left: 10px;
  171. }
  172. main > .article > section:last-of-type {
  173. align-self: center;
  174. font-size: 1.2rem;
  175. }
  176. /*最新博文*/
  177. main > .blog {
  178. display: flex;
  179. flex-direction: column;
  180. }
  181. main > .blog > section {
  182. display: flex;
  183. justify-content: space-between;
  184. margin: 5px;
  185. background-color: #fff;
  186. }
  187. main > .blog > section:last-of-type {
  188. align-self: center;
  189. font-size: 1.2rem;
  190. }
  191. /*最新问答*/
  192. main > .questions_answers {
  193. display: flex;
  194. flex-direction: column;
  195. }
  196. main > .questions_answers > section {
  197. display: flex;
  198. justify-content: space-between;
  199. margin: 5px;
  200. background-color: #fff;
  201. }
  202. main > .questions_answers > section:last-of-type {
  203. align-self: center;
  204. font-size: 1.2rem;
  205. }
  206. /*尾部*/
  207. footer {
  208. position: fixed;
  209. bottom: 0;
  210. width: 100%;
  211. height:60px;
  212. min-width: 320px;
  213. max-width: 768px;
  214. /*转为flex*/
  215. display: flex;
  216. flex-direction: row;
  217. justify-content: space-between;
  218. align-items: center;
  219. background-color: #fff;
  220. }
  221. footer > div {
  222. display: flex;
  223. flex-direction: column;
  224. /*justify-content: space-around;*/
  225. margin: auto 15px;
  226. align-items: center;
  227. }
  228. footer > div:first-of-type {
  229. font-size: 1.2rem;
  230. color: red;
  231. }

4、总结:

4.1 html标签的正确使用十分重要,使用正确在CSS写样式的时候效果十分明显。

4.2 选择器相关知识必不可少。

4.3 熟能生巧,我第二次写,明显感觉轻松很多,所以一定要多写多看。

Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:挺不错, 推荐到群中了
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post