首页 > 开发 > CSS > 正文

CSS3的Flexbox骰子布局的实现及问题讲解

2024-07-11 08:32:47
字体:
来源:转载
供稿:网友

本文中只是熟悉基本属性的用法,并完成一组骰子各个面的制作。在下面的内容我不会涉及flexbox一些比较棘手的问题,比如旧版本语法、供应商前缀、浏览器怪癖等:

一、First Face
我们知道,骰子有六个面,每个面的点的个数代表该面的值,第一个面由一个水平垂直居中的点组成。下面来看具体的实现:

CSS Code复制内容到剪贴板
  1.  <section name="01" class="face-01">      <span class="dot"></span>   
  2.  </section>    face-01 {   
  3. display: flex;    justify-content: center;   
  4. align-items: center;   

关于justify-content和align-items的用法请参考这里justify-content,align-items。使用flexbox,垂直居中两行属性就可以搞定,很easy!

二、Second Face

CSS Code复制内容到剪贴板
  1. .face-02 {     display: flex;   
  2.  justify-content: space-between;    }   
  3. .face-02 .dot:nth-of-type(2) {     align-self: flex-end;   
  4. }      <section name="02" class="face-02">   
  5.    <span class="dot"></span>       <span class="dot"></span>   
  6.   </section>  

这里我们不能使用align-items属性,使用它两个点都会受影响,flexbox提供了一个align-self属性,这个属性可以让我们更方便的控制flex items的各项沿着cross axias方向,设置不同的布局。align-self的用法参考这里align-self。

 

三、Third Face

CSS Code复制内容到剪贴板
  1. .face-03 {     display: flex;   
  2.  justify-content: space-between;    }   
  3. .face-03 .dot:nth-of-type(2) {     align-self: center;   
  4. }    .face-03 .dot:nth-of-type(3) {   
  5.  align-self: flex-end;    }   
  6. <section name="03" class="face-03">     <span class="dot"></span>   
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表