博客列表 >CSS Flex弹性盒子认识与实战

CSS Flex弹性盒子认识与实战

星夜低语
星夜低语原创
2020年04月12日 17:46:091019浏览

仿中文网移动端链接,请老师查看

flex 布局概述

1. flex 是什么

  • flex 是 Flexible Box 的缩写,意为弹性布局
  • flex 2009 年就已出现,浏览器兼容性很好,请放心使用

2. flex 解决了什么问题

  • 块元素的垂直居中, flex 可以轻松解决
  • 元素大小在容器中的自动伸缩,以适应容器的变化,特别适合移动端布局

3. flex 项目的布局方向是什么

  • 一个物体在一个平面中, 要么水平排列, 要么垂直排列, flex 借鉴了这个思想
  • flex 是一维布局, 项目任何时候只能沿一个方向排列,要么水平, 要么垂直
  • flex 项目排列的方向, 称为主轴, 水平和垂直二种
  • 与主轴垂直的称为交叉轴(有的教程也称之为副轴/侧轴)

4. flex 布局中常用术语有哪些(三个二)

序号 简记 术语
1 二成员 容器和项目(container / item)
2 二根轴 主轴与交叉轴(main-axis / cross-axis)
3 二根线 起始线与结束线(flex-start / flex-end)

5.flex 容器属性有哪些

序号 属性 描述
1 flex-direction 设置容器中的主轴方向: 行/水平方向, 列/垂直方向
2 flex-wrap 是否允许创建多行容器,即 flex 项目一行排列不下时, 是否允许换行
3 flex-flow 简化 flex-direction, flex-wrap 属性
4 justify-content 设置 flex 项目在主轴上对齐方式
5 align-items 设置 flex 项目在交叉轴上对齐方式
6 align-content 多行容器中,项目在交叉轴上的对齐方式

6. flex 项目属性有哪些

序号 属性 描述
1 flex-basis 项目宽度: 项目分配主轴剩余空间之前, 项目所占据的主轴空间宽度
2 flex-grow 项目的宽度扩展: 将主轴上的剩余空间按比例分配给指定项目
3 flex-shrink 项目的宽度收缩: 将项目上多出空间按比例在项目间进行缩减
4 flex 是上面三个属性的简化缩写: flex: flex-grow flex-shrink flex-basis
5 align-self 单独自定义某个项目在交叉轴上的对齐方式
6 order 自定义项目在主轴上的排列顺序,默认为 0,书写顺序,值越小位置越靠前

flex 容器与项目

1. display属性

序号 属性值 描述 备注
1 flex; 创建 flex 块级容器 内部子元素自动成为 flex 项目
2 inline-flex; 创建 flex 行内容器 内部子元素自动成为 flex 项目

2. flex 容器与项目特征

序号 容器/项目 默认行为
1 容器主轴 水平方向
2 项目排列 沿主轴起始线排列(当前起始线居左)
3 项目类型 自动转换”行内块级”元素,不管之前是什么类型
4 容器主轴空间不足时 项目自动收缩尺寸以适应空间变化,不会换行显示
5 容器主轴存在未分配空间时 项目保持自身大小不会放大并充满空间

flex 容器主轴方向

flex-direction属性

序号 属性值 描述
1 row默认值 主轴水平: 起始线居中,项目从左到右显示
2 row-reverse 主轴水平:起始线居右, 项目从右向左显示
3 column 主轴垂直: 起始线居上,项目从上向下显示
4 column-reverse 主轴垂直: 起始线居下,项目从下向上显示

flex 容器主轴项目换行

flex-wrap属性

序号 属性值 描述
1 nowrap默认值 项目不换行: 单行容器
2 wrap 项目换行: 多行容器,第一行在上方
3 wrap-reverse 项目换行: 多行容器,第一行在下方

flex 容器主轴项目对齐

justify-content属性

当容器中主轴方向上存在剩余空间时, 该属性才有意义

序号 属性值 描述
1 flex-start默认 所有项目与主轴起始线对齐
2 flex-end 所有项目与主轴终止线对齐
3 center 所有项目与主轴中间线对齐: 居中对齐
4 space-between 两端对齐: 剩余空间在头尾项目之外的项目间平均分配
5 space-around 分散对齐: 剩余空间在每个项目二侧平均分配
6 space-evenly 平均对齐: 剩余空间在每个项目之间平均分配

flex 容器交叉轴项目对齐

align-items属性

  • 该属性仅适用于: 单行容器
  • 当容器中交叉轴方向上存在剩余空间时, 该属性才有意义
序号 属性值 描述
1 flex-start默认 与交叉轴起始线对齐
2 flex-end 与交叉轴终止线对齐
3 center 与交叉轴中间线对齐: 居中对齐

flex 多行容器交叉轴项目对齐

align-content属性

  • 该属性仅适用于: 多行容器
  • 多行容器中, 交叉轴会有多个项目, 剩余空间在项目之间分配才有意义
序号 属性值 描述
1 stretch默认 项目拉伸占据整个交叉轴
1 flex-start 所有项目与交叉轴起始线(顶部)对齐
2 flex-end 所有项目与交叉轴终止线对齐
3 center 所有项目与交叉轴中间线对齐: 居中对齐
4 space-between 两端对齐: 剩余空间在头尾项目之外的项目间平均分配
5 space-around 分散对齐: 剩余空间在每个项目二侧平均分配
6 space-evenly 平均对齐: 剩余空间在每个项目之间平均分配

提示: 多行容器中通过设置flex-wrap: wrap | wrap-reverse实现

flex 项目交叉轴单独对齐

align-self属性

  • 该属性可覆盖容器的align-items, 用以自定义某个项目的对齐方式
序号 属性值 描述
1 auto默认值 继承 align-items 属性值
2 flex-start 与交叉轴起始线对齐
3 flex-end 与交叉轴终止线对齐
4 center 与交叉轴中间线对齐: 居中对齐
5 stretch 在交叉轴方向上拉伸
6 baseline 与基线对齐(与内容相关用得极少)

flex 项目放大因子

flex-grow属性

  • 在容器主轴上存在剩余空间时, flex-grow才有意义
  • 该属性的值,称为放大因子, 常见的属性值如下:
序号 属性值 描述
1 0默认值 不放大,保持初始值
2 initial 设置默认值,与0等效
3 n 放大因子: 正数

flex 项目收缩因子

flex-shrink属性

  • 当容器主轴 “空间不足” 且 “禁止换行” 时, flex-shrink才有意义
  • 该属性的值,称为收缩因子, 常见的属性值如下:
序号 属性值 描述
1 1默认值 允许项目收缩
2 initial 设置初始默认值,与 1 等效
3 0 禁止收缩,保持原始尺寸
4 n 收缩因子: 正数

flex 项目计算尺寸

flex-basis属性

  • 在分配多余空间之前,项目占据的主轴空间
  • 浏览器根据这个属性,计算主轴是否有多余空间
  • 该属性会覆盖项目原始大小(width/height)
  • 该属性会被项目的min-width/min-height值覆盖
序号 属性值 描述
1 auto 默认值: 项目原来的大小
2 px 像素
3 % 百分比

优先级: 项目大小 < flex-basis < min-width/height

flex 项目缩放的简写

1. flex属性

  • 项目放大,缩小与计算尺寸,对于项目非常重要,也很常用
  • 每次都要写这三个属性,非常的麻烦,且没有必要
  • flex属性,可以将以上三个属性进行简化:
  • 语法: flex: flex-grow flex-shrink flex-basis

1.1 三值语法

序号 属性值 描述
1 第一个值: 整数 flex-grow
2 第二个值: 整数 flex-shrink
3 第三个值: 有效宽度 flex-basis

举例:

序号 案例 描述
1 flex: 0 1 auto 默认值: 不放大,可收缩, 初始宽度
2 flex: 1 1 auto 项目自动放大或收缩适应容器
3 flex: 0 0 100px 按计算大小填充到容器中

1.2 双值语法

序号 属性值 描述
1 第一个值: 整数 flex-grow
3 第二个值: 有效宽度 flex-basis

举例:

案例 描述
flex: 0 180px 禁止放大,按计算大小填充到容器中

1.3 单值语法

序号 属性值 描述
1 整数 flex-grow
2 有效宽度 flex-basis
3 关键字 `initial auto none`

举例:

序号 案例 描述
1 flex: 1 flex: 1 1 auto
2 flex: 180px flex: 1 1 180px
3 initial flex: 0 1 auto
4 auto flex: 1 1 auto
5 none flex: 0 0 auto

推荐使用flex, 就像推荐使用flex-grow设置主轴与换行一样

个人总结

通过学习 CSSFlex弹性布局,是我能更加熟练与快速的进行页面布局,首先要明白什么是弹性盒子;flex 是一维平面上的布局,要么沿着水平方向,要么就是垂直方向,而且布局只针对子元素.子元素自动收缩尺寸适应窗口大小的变化而不会自动换行.

特别注意 需要熟练掌握

flex共有12大属性,其中6个容器属性6个项目属性

1.容器属性
flex-direction(方向)
flex-wrap(换行)
flex-flow(方向、换行的简写)
justify-content(水平方向对齐)
align-items(竖直方向对齐)
align-content(多行对齐)

可以不用前两个 直接用flex-flow进行缩写

2.项目属性
flex-basis(宽)
flex-grow(放大)
flex-shrink(缩小)
flex align-self(单个竖直方向对齐)
order(顺序)
flex(放大、缩小、宽的简写)

可以不用前三个属性,直接用flex进行缩写

实操项目问题

1.文本溢出隐藏解决方法

  1. div{
  2. display: flex;
  3. flex-flow: column nowrap;
  4. /*父元素设置为弹性盒子,垂直且不允许换行*/
  5. }
  6. div > a {
  7. white-space: nowrap; /*设置文字禁止换行*/
  8. overflow: hidden; /* 内容超出宽度时隐藏超出部分的内容 */
  9. text-overflow: ellipsis;/* 当对象内文本溢出时显示省略标记(...) ;需与overflow:hidden;一起使用。*/
  10. }

2.注意如果元素不是弹性盒模型对象的子元素,则 flex 属性不起作用 就是说这个子元素的上面的元素必须是 display: flex
3.vh给线下测试可以用这个高度显示正常,可是线上pc显示有问题需要进一步理解

作业代码

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta
  6. name="viewport"
  7. content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no,minimal-ui"
  8. />
  9. <meta name="applicable-device" content="mobile" />
  10. <title>php中文网-教程_手册_视频-免费php在线学习平台</title>
  11. <link rel="stylesheet" href="static/css/font-icon.css" />
  12. <style>
  13. * {
  14. margin: 0;
  15. padding: 0;
  16. }
  17. a {
  18. text-decoration: none;
  19. color: #666;
  20. }
  21. html {
  22. /* vw: 可视区宽度,100vw:表示占满100份 */
  23. width: 100vw;
  24. height: 100vh;
  25. /* 在html中设置字体大小, 给后的rem单位用 */
  26. font-size: 14px;
  27. }
  28. .hot {
  29. color: coral;
  30. }
  31. body {
  32. min-width: 360px;
  33. max-width: 768px;
  34. margin: 0 auto;
  35. background: #edeff0;
  36. display: flex;
  37. flex-flow: column nowrap;
  38. }
  39. header {
  40. background-color: #2d353c;
  41. box-shadow: 0 0 10px 1px rgba(7, 17, 27, 0.1);
  42. color: white;
  43. height: 50px;
  44. display: flex;
  45. align-items: center;
  46. justify-content: space-between;
  47. padding: 0 15px;
  48. box-sizing: border-box;
  49. position: fixed;
  50. top: 0;
  51. width: 100%;
  52. }
  53. header > a:first-of-type > img {
  54. width: 30px;
  55. height: 30px;
  56. border-radius: 50%;
  57. margin-top: 7px;
  58. }
  59. header > a:last-of-type > img {
  60. height: 45px;
  61. width: 94px;
  62. }
  63. .slider {
  64. height: 200px;
  65. margin-top: 50px;
  66. }
  67. .slider > img {
  68. width: 100%;
  69. height: 100%;
  70. }
  71. nav {
  72. height: 30vh;
  73. display: flex;
  74. /* 变成多行容器 */
  75. flex-flow: row wrap;
  76. background-color: #fff;
  77. }
  78. nav > div {
  79. /* 占宽度四分之一 */
  80. width: 25vw;
  81. display: flex;
  82. flex-flow: column nowrap;
  83. align-items: center;
  84. justify-content: center;
  85. }
  86. nav > div > a:first-of-type {
  87. text-align: center;
  88. }
  89. nav > div img {
  90. width: 50%;
  91. }
  92. h2 {
  93. margin: 20px 10px;
  94. color: #888;
  95. }
  96. .course-list {
  97. display: flex;
  98. flex-flow: column nowrap;
  99. }
  100. .course-list > div:first-of-type {
  101. display: flex;
  102. justify-content: space-around;
  103. margin: 10px;
  104. }
  105. .course-list > div:first-of-type > a img {
  106. height: 90px;
  107. width: 98%;
  108. }
  109. .course-list > div:last-of-type {
  110. padding: 10px;
  111. box-sizing: border-box;
  112. display: flex;
  113. flex-flow: column nowrap;
  114. }
  115. .course-intro {
  116. padding: 10px;
  117. margin: 10px;
  118. box-sizing: border-box;
  119. display: flex;
  120. background-color: #fff;
  121. }
  122. .course-intro a {
  123. width: 40%;
  124. height: 80px;
  125. }
  126. .course-intro img {
  127. width: 100%;
  128. height: 80px;
  129. }
  130. .course-intro div {
  131. display: flex;
  132. flex-flow: column nowrap;
  133. }
  134. .course-intro div > h3,
  135. .course-intro div > p {
  136. margin: 10px;
  137. color: #888;
  138. }
  139. .level {
  140. background: #595757;
  141. border-radius: 8px;
  142. color: #fff;
  143. font-size: 10px;
  144. padding: 3px;
  145. }
  146. .left {
  147. margin-right: 0 10px;
  148. }
  149. .new-list {
  150. display: flex;
  151. flex-flow: column nowrap;
  152. margin: 0 10px;
  153. }
  154. .new-list .new-intro {
  155. margin: 0 10px 10px;
  156. padding: 10px;
  157. background-color: #fff;
  158. display: flex;
  159. justify-content: space-between;
  160. }
  161. .new-intro a {
  162. width: 40%;
  163. height: 80px;
  164. }
  165. .new-intro img {
  166. width: 100%;
  167. height: 80px;
  168. }
  169. .new-intro div {
  170. display: flex;
  171. flex-flow: column nowrap;
  172. margin-left: 10px;
  173. box-sizing: border-box;
  174. height: 80px;
  175. width: 50%;
  176. color: #888;
  177. }
  178. .new-list .new-intro div > .ld {
  179. display: flex;
  180. justify-content: space-between;
  181. }
  182. .new-intro div > a {
  183. width: 100%;
  184. color: #888;
  185. font-size: 0.8rem;
  186. white-space: nowrap;
  187. overflow: hidden;
  188. text-overflow: ellipsis;
  189. }
  190. .more {
  191. display: block;
  192. margin: 0 auto;
  193. /* line-height: 30px; */
  194. line-height: 10px;
  195. text-align: center;
  196. background: #fff;
  197. padding: 10px 0;
  198. width: 100%;
  199. margin: 10px;
  200. }
  201. .new-intro-port {
  202. margin: 0 10px 10px;
  203. padding: 10px;
  204. background-color: #fff;
  205. display: flex;
  206. }
  207. .new-intro-port > div {
  208. display: flex;
  209. width: 100%;
  210. justify-content: space-between;
  211. }
  212. .new-intro-port > div > a:last-of-type {
  213. width: 40%;
  214. }
  215. .new-intro-port > div > a:first-of-type {
  216. width: 60%;
  217. }
  218. .new-intro-port > div > a {
  219. margin-left: 10px;
  220. white-space: nowrap;
  221. overflow: hidden;
  222. text-overflow: ellipsis;
  223. }
  224. /* 页脚 */
  225. body > footer {
  226. color: #666;
  227. background-color: #efefef;
  228. border-top: 1px solid #ccc;
  229. height: 55px;
  230. position: fixed;
  231. bottom: 0;
  232. width: 100vw;
  233. display: flex;
  234. justify-content: space-around;
  235. }
  236. body > footer > a {
  237. margin-top: 10px;
  238. font-size: 0.8rem;
  239. display: flex;
  240. flex-flow: column nowrap;
  241. align-items: center;
  242. }
  243. body > footer > a > span:first-of-type {
  244. font-size: 1.6rem;
  245. }
  246. </style>
  247. </head>
  248. <body>
  249. <!-- 页面头部 -->
  250. <header>
  251. <a href="/"
  252. ><img src="static/images/user_avatar.jpg" alt="php中文网"
  253. /></a>
  254. <a href=""
  255. ><img
  256. src="static/images/logo.png"
  257. title="培训视频、在线学习、学习视频网站、网络学习平台"
  258. /></a>
  259. <span class="iconfont" style="font-size: 1.5rem;">&#xe61f;</span>
  260. </header>
  261. <!-- banner图 -->
  262. <div class="slider">
  263. <img src="static/images/ico/11.png" alt="" />
  264. </div>
  265. <!-- 主导航区 -->
  266. <nav>
  267. <div>
  268. <a href=""><img src="static/images/ico/html.png" /></a>
  269. <a href="">HTML/CSS</a>
  270. </div>
  271. <div>
  272. <a href=""><img src="static/images/ico/JavaScript.png" alt="" /></a>
  273. <a href="">JavaScript</a>
  274. </div>
  275. <div>
  276. <a href=""><img src="static/images/ico/code.png" alt="" /></a>
  277. <a href="">服务端</a>
  278. </div>
  279. <div>
  280. <a href=""><img src="static/images/ico/sql.png" alt="" /></a>
  281. <a href="">数据库</a>
  282. </div>
  283. <div>
  284. <a href=""><img src="static/images/ico/app.png" alt="" /></a>
  285. <a href="">移动端</a>
  286. </div>
  287. <div>
  288. <a href=""><img src="static/images/ico/manual.png" alt="" /></a>
  289. <a href="">手册</a>
  290. </div>
  291. <div>
  292. <a href=""><img src="static/images/ico/tool2.png" alt="" /></a>
  293. <a href="">工具</a>
  294. </div>
  295. <div>
  296. <a href=""><img src="static/images/ico/live.png" alt="" /></a>
  297. <a href="">直播</a>
  298. </div>
  299. </nav>
  300. <!-- 推荐课程 -->
  301. <h2>推荐课程</h2>
  302. <div class="course-list">
  303. <div>
  304. <a href=""
  305. ><img
  306. src="https://img.php.cn/upload/course/000/000/001/5d242759adb88970.jpg"
  307. alt="PHP实战天龙八部之微信支付视频教程"
  308. /></a>
  309. <a href=""
  310. ><img
  311. src="https://img.php.cn/upload/course/000/000/001/5d2426f409839992.jpg"
  312. alt="PHP实战天龙八部之仿爱奇艺电影网站"
  313. /></a>
  314. </div>
  315. <div>
  316. <div class="course-intro">
  317. <a href=""
  318. ><img
  319. src="https://img.php.cn/upload/course/000/000/035/5d2941e265889366.jpg"
  320. alt=""
  321. /></a>
  322. <div>
  323. <h3><a href="">h3CI框架30分钟极速入门</a></h3>
  324. <p><span class="level">中级</span><span>61263次播放</span></p>
  325. </div>
  326. </div>
  327. <div class="course-intro">
  328. <a href=""
  329. ><img
  330. src="https://img.php.cn/upload/course/000/126/153/5aa23f0ded921649.jpg"
  331. alt=""
  332. /></a>
  333. <div>
  334. <h3><a href="">2018前端入门_HTML5</a></h3>
  335. <p><span class="level">初级</span><span>310347次播放</span></p>
  336. </div>
  337. </div>
  338. </div>
  339. </div>
  340. <!-- 最近更新 -->
  341. <h2>最近更新</h2>
  342. <div class="new-list">
  343. <div class="new-intro">
  344. <a href=""
  345. ><img
  346. src="https://img.php.cn/upload/course/000/000/015/5e0d6387e45cc764.png"
  347. alt=""
  348. /></a>
  349. <div>
  350. <a href="" style="font-size: 1.2rem; font-weight: bolder;"
  351. >PHP快速操控Excel之PhpSpreadsheet</a
  352. >
  353. <a
  354. >老的PHPExcel已经停止更新了!目前最新的是使用phpOffice插件PhpSpreadsheet,用纯
  355. php
  356. 编写的库,它提供了一组类,允许您读取和写入不同的电子表格文件格式!php中文网欧阳克老师原创课程!注:PHP运行环境需要PHP7.1以上</a
  357. >
  358. <p class="ld">
  359. <span class="level">中级</span><span>15088次播放</span>
  360. </p>
  361. </div>
  362. </div>
  363. <div class="new-intro">
  364. <a href=""
  365. ><img
  366. src="https://img.php.cn/upload/course/000/000/015/5e0d82773b4fe808.png"
  367. alt=""
  368. /></a>
  369. <div>
  370. <a href="" style="font-size: 1.2rem; font-weight: bolder;"
  371. >Thinkphp6.0正式版视频教程</a
  372. >
  373. <a
  374. >Thinkphp6.0从2019年10月24日正式发布,相对测试版,有很多变动,目前TP6已经相对比较稳定了,所以php中文网在2020年再次重新录制课程,帮助快速入门!相关推荐:
  375. ThinkPHP6.0完全开发手册(注解版)
  376. https://www.php.cn/course/1049.html</a
  377. >
  378. <p class="ld">
  379. <span class="level">中级</span><span>48933次播放</span>
  380. </p>
  381. </div>
  382. </div>
  383. <div class="new-intro">
  384. <a href=""
  385. ><img
  386. src="https://img.php.cn/upload/course/000/000/014/5db2b53c67bca626.jpg"
  387. alt=""
  388. /></a>
  389. <div>
  390. <a href="" style="font-size: 1.2rem; font-weight: bolder;"
  391. >2019python自学视频</a
  392. >
  393. <a
  394. >本课程适合想从零开始学习 Python
  395. 编程语言的开发人员。由浅入深的带你进入python世界,自学python的一份好课程,兄弟连课程</a
  396. >
  397. <p class="ld">
  398. <span class="level">初级</span><span>36485次播放</span>
  399. </p>
  400. </div>
  401. </div>
  402. <div class="new-intro">
  403. <a href=""
  404. ><img
  405. src="https://img.php.cn/upload/course/000/000/015/5da7e9b7895ed229.png"
  406. alt=""
  407. /></a>
  408. <div>
  409. <a href="" style="font-size: 1.2rem; font-weight: bolder;"
  410. >PHP开发免费公益直播课</a
  411. >
  412. <a
  413. >主讲:php中文网-朱老师( Peter Zhu) 时间:2019.10.17 晚 20:00-22:00
  414. 主题:如何高效的学习一门新技术? 具体内容:1. 2020了,
  415. 还有哪些值得学习的新技术? 2.如何高效的学习前端开发?
  416. 3.如果高效的学习PHP开发?4.phpStudy V8 新功能介绍与演示
  417. 5.小皮面板功能介绍</a
  418. >
  419. <p class="ld">
  420. <span class="level">初级</span><span>6821次播放</span>
  421. </p>
  422. </div>
  423. </div>
  424. <div class="new-intro">
  425. <a href=""
  426. ><img
  427. src="https://img.php.cn/upload/course/000/000/014/5da6a50535529903.jpg"
  428. alt=""
  429. /></a>
  430. <div>
  431. <a href="" style="font-size: 1.2rem; font-weight: bolder;"
  432. >从零开始到WEB响应式布局</a
  433. >
  434. <a
  435. >重点介绍了HTML、CSS、web布局前端核心技术,通过视频讲解,了解可以利用HTML+CSS做什么,有相关工具、后端语言,逻辑思维训练等知识点</a
  436. >
  437. <p class="ld">
  438. <span class="level">初级</span><span>29212次播放</span>
  439. </p>
  440. </div>
  441. </div>
  442. <div class="new-intro">
  443. <a href=""
  444. ><img
  445. src="https://img.php.cn/upload/course/000/000/015/5da51b8ff1224244.png"
  446. alt=""
  447. /></a>
  448. <div>
  449. <a href="" style="font-size: 1.2rem; font-weight: bolder;"
  450. >PHP文件基础操作</a
  451. >
  452. <a
  453. >好多同学在PHP基础的时候对PHP文件的操作了解的不够多,本节课就带着大家来学习PHP文件的基础操作,PHP操作文件主要用到的就是PHP文件相关的函数,那么我们主要讲的也就是PHP文件相关的各种函数,相信本节课程会让你对PHP更感兴趣哦!</a
  454. >
  455. <p class="ld">
  456. <span class="level">中级</span><span>8888次播放</span>
  457. </p>
  458. </div>
  459. </div>
  460. </div>
  461. <!-- 最新文章 -->
  462. <h2>最新文章</h2>
  463. <div class="new-list">
  464. <div class="new-intro">
  465. <div>
  466. <a href="" style="font-size: 1.2rem; font-weight: bolder;"
  467. >sublime正则搜索替换修改数据的方法</a
  468. >
  469. <a><span>发布时间:2020-04-11</span></a>
  470. </div>
  471. <a href=""
  472. ><img
  473. src="https://img.php.cn/upload/article/000/000/020/5e91923747dab842.jpg"
  474. alt=""
  475. /></a>
  476. </div>
  477. <div class="new-intro">
  478. <div>
  479. <a href="" style="font-size: 1.2rem; font-weight: bolder;"
  480. >为什么我的电脑只有c盘</a
  481. >
  482. <a><span>发布时间:2020-04-11</span></a>
  483. </div>
  484. <a href=""
  485. ><img
  486. src="https://img.php.cn/upload/article/000/000/020/5e918fffe166f364.jpg"
  487. alt="为什么我的电脑只有c盘"
  488. /></a>
  489. </div>
  490. <div class="new-intro">
  491. <div>
  492. <a href="" style="font-size: 1.2rem; font-weight: bolder;"
  493. >dedecms如何添加并引入php文件</a
  494. >
  495. <a><span>发布时间:2020-04-11</span></a>
  496. </div>
  497. <a href=""
  498. ><img
  499. src="https://img.php.cn/upload/article/000/000/041/5e918a4ac6da9826.jpg"
  500. alt="dedecms如何添加并引入php文件"
  501. /></a>
  502. </div>
  503. <div class="new-intro">
  504. <div>
  505. <a href="" style="font-size: 1.2rem; font-weight: bolder;"
  506. >扩展分区转主分区的方法</a
  507. >
  508. <a><span>发布时间:2020-04-11</span></a>
  509. </div>
  510. <a href=""
  511. ><img
  512. src="https://img.php.cn/upload/article/000/000/020/5e9179096b985669.jpg"
  513. alt="扩展分区转主分区的方法"
  514. /></a>
  515. </div>
  516. <div class="new-intro">
  517. <div>
  518. <a href="" style="font-size: 1.2rem; font-weight: bolder;"
  519. >2020全新Java面试题——容器(二)</a
  520. >
  521. <a><span>发布时间:2020-04-11</span></a>
  522. </div>
  523. <a href=""
  524. ><img
  525. src="https://img.php.cn/upload/article/000/000/041/5e9172bb26057270.jpg"
  526. alt="2020全新Java面试题——容器(二)"
  527. /></a>
  528. </div>
  529. </div>
  530. <!-- 最新博文 -->
  531. <h2>最新文章</h2>
  532. <div class="new-list">
  533. <div class="new-intro-port">
  534. <div>
  535. <a href="" style="font-size: 1rem; font-weight: bolder;"
  536. >CSS3:弹性盒子flex布局</a
  537. >
  538. <a><span>2020-04-11</span></a>
  539. </div>
  540. </div>
  541. </div>
  542. <div class="new-list">
  543. <div class="new-intro-port">
  544. <div>
  545. <a href="" style="font-size: 1rem; font-weight: bolder;"
  546. >Jquery+AJAX上传文件,无刷新上传并重命名文件</a
  547. >
  548. <a><span>2020-04-11</span></a>
  549. </div>
  550. </div>
  551. </div>
  552. <div class="new-list">
  553. <div class="new-intro-port">
  554. <div>
  555. <a href="" style="font-size: 1rem; font-weight: bolder;"
  556. >thinkphp5.6源码阅读1</a
  557. >
  558. <a><span>2020-04-11</span></a>
  559. </div>
  560. </div>
  561. </div>
  562. <div class="new-list">
  563. <div class="new-intro-port">
  564. <div>
  565. <a href="" style="font-size: 1rem; font-weight: bolder;"
  566. >Composer windows安装详细介绍</a
  567. >
  568. <a><span>2020-04-11</span></a>
  569. </div>
  570. </div>
  571. </div>
  572. <div class="new-list">
  573. <div class="new-intro-port">
  574. <div>
  575. <a href="" style="font-size: 1rem; font-weight: bolder;"
  576. >AI智能电销机器人源码 源码解读(1)—基础</a
  577. >
  578. <a><span>2020-04-11</span></a>
  579. </div>
  580. </div>
  581. </div>
  582. <!-- 最新问答 -->
  583. <h2>最新问答</h2>
  584. <div class="new-list">
  585. <div class="new-intro-port">
  586. <div>
  587. <a href="" style="font-size: 1rem; font-weight: bolder;"
  588. >不出现tp6.0页面</a
  589. >
  590. <a><span>2020-04-11</span></a>
  591. </div>
  592. </div>
  593. </div>
  594. <div class="new-list">
  595. <div class="new-intro-port">
  596. <div>
  597. <a href="" style="font-size: 1rem; font-weight: bolder;"
  598. >数据库密码··</a
  599. >
  600. <a><span>2020-04-11</span></a>
  601. </div>
  602. </div>
  603. </div>
  604. <div class="new-list">
  605. <div class="new-intro-port">
  606. <div>
  607. <a href="" style="font-size: 1rem; font-weight: bolder;"
  608. >制定的学习计划在哪能找到 咋找不到呢?</a
  609. >
  610. <a><span>2020-04-11</span></a>
  611. </div>
  612. </div>
  613. </div>
  614. <div class="new-list">
  615. <div class="new-intro-port">
  616. <div>
  617. <a href="" style="font-size: 1rem; font-weight: bolder;"
  618. >数据库链接后怎么知道用哪个表啊</a
  619. >
  620. <a><span>2020-04-11</span></a>
  621. </div>
  622. </div>
  623. </div>
  624. <div class="new-list">
  625. <div class="new-intro-port">
  626. <div>
  627. <a href="" style="font-size: 1rem; font-weight: bolder;"
  628. >这个同步的东西</a
  629. >
  630. <a><span>2020-04-11</span></a>
  631. </div>
  632. </div>
  633. </div>
  634. <!-- 页脚 -->
  635. <footer>
  636. <a href="">
  637. <span class="iconfont hot">&#xe60c;</span>
  638. <span>首页</span>
  639. </a>
  640. <a href="">
  641. <span class="iconfont hot">&#xe60a;</span>
  642. <span>视频</span>
  643. </a>
  644. <a href="">
  645. <span class="iconfont hot">&#xe675;</span>
  646. <span>社区</span>
  647. </a>
  648. <a href="">
  649. <span class="iconfont hot">&#xe600;</span>
  650. <span>我的</span>
  651. </a>
  652. </footer>
  653. </body>
  654. </html>
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议