博客列表 >弹性元素常用属性—***九期线上班

弹性元素常用属性—***九期线上班

邯郸易住宋至刚
邯郸易住宋至刚原创
2019年11月15日 00:06:17763浏览

一、将课堂中的全部案例照写一遍, 并达到默写级别

手抄代码如下:

二、将flex属性的用法, 手抄, 建议二遍以上

三、自学:align-self, order的用法

HTML代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>单独设置元素在交叉轴上排列方式</title>
  6. <link rel="stylesheet" href="css/style5.css">
  7. </head>
  8. <body>
  9. <h1>单独设置元素在交叉轴上排列方式</h1>
  10. <div class="container flex">
  11. <span class="item">item1</span>
  12. <span class="item">item2</span>
  13. <span class="item">item3</span>
  14. </div>
  15. </body>
  16. </html>

CSS基本代码如下:

  1. @import "public.css";
  2. .container {
  3. width: 500px;
  4. height: 300px;
  5. /*以主轴垂直为例进行演示*/
  6. flex-flow: column nowrap;
  7. /*设置元素紧贴终止线排列
  8. align-items设置的是弹性容器中所有的弹性元素的
  9. 的排列
  10. */
  11. align-items: flex-end;
  12. }
  13. /*设置元素的默认大小*/
  14. .item {
  15. width: 100px;
  16. height: 60px;
  17. }

结果如图:

align-self: flex-start;

  1. /*将第一个单独调整, 紧贴起始线排列
  2. align-self属性是单独一个弹性元素的
  3. 排列
  4. */
  5. .item:last-of-type {
  6. align-self: flex-start;
  7. }

结果如下:

align-self: center;

  1. /*将最后一个单独调整到中间位置排列*/
  2. .item:first-of-type {
  3. align-self: center;
  4. }

结果如下:

order: -1;

  1. /*将第二个元素,使它自动扩展*/
  2. .item:nth-of-type(2) {
  3. /*设置不一定背景方便观察*/
  4. background-color: lightblue;
  5. /*为了自动扩展,需要还原元素的宽度到初始大小*/
  6. width: auto;
  7. /* align-self: stretch; */
  8. /* order 在flex中是弹性容器中弹性元素的显示顺序
  9. 数值越大,显示越靠后,如果是负值,排列更靠前 */
  10. order: -1;
  11. }

结果如下:

四、用flex布局改写圣杯布局

HTML代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>saintdemo</title>
  6. <link rel="stylesheet" href="css/saint.css">
  7. </head>
  8. <body>
  9. <header>header</header>
  10. <main>
  11. <article>content</article>
  12. <aside>left</aside>
  13. <aside>right</aside>
  14. </main>
  15. <footer>footer</footer>
  16. </body>
  17. </html>

CSS代码如下:

  1. * {
  2. margin: 0;
  3. padding: 0;
  4. }
  5. body {
  6. width: 700px;
  7. height: 700px;
  8. border: 1px solid lightblue;
  9. display: flex;
  10. box-sizing: border-box;
  11. flex-flow: column nowrap;
  12. }
  13. header,footer {
  14. width: 100%;
  15. height: 40px;
  16. border: 1px solid lightcoral;
  17. background-color: gray;
  18. color: blue;
  19. font-size: 1.5rem;
  20. text-align: center;
  21. line-height: 40px;
  22. }
  23. main {
  24. width: 100%;
  25. height: 100%;
  26. border: 1px solid red;
  27. display: flex;
  28. flex-flow: row nowrap;
  29. }
  30. main >aside {
  31. width: 200px;
  32. height: 100%;
  33. border: 1px solid pink;
  34. background-color: skyblue;
  35. color: blue;
  36. }
  37. main > article {
  38. width: 100%;
  39. height: 100%;
  40. background-color: green;
  41. }
  42. main >aside:first-of-type{
  43. order: -1;
  44. }

结果如下:

总结:

1、align-items属性设置的是弹性容器中所有弹性元素的排列方式;

2、align-self属性设置的是弹性容器中某一个弹性元素的排列方式;

3、order属性设置的是某一个弹性元素的排列顺序,默认是0,数例越大,排列越靠后,也可以是负数,如果是负数,则该元素的排列的顺序会比正数排列更靠前。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议