zoukankan      html  css  js  c++  java
  • Flexbox 练习和总结

    练习地址: http://flexboxfroggy.com/

    Welcome to Flexbox Froggy, a game where you help Froggy and friends by writing CSS code! Guide this frog to the lilypad on the right by using the justify-content property, which aligns items horizontally and accepts the following values:

    • flex-start: Items align to the left side of the container.
    • flex-end: Items align to the right side of the container.
    • center: Items align at the center of the container.
    • space-between: Items display with equal spacing between them.
    • space-around: Items display with equal spacing around them.

    Help all three frogs find their lilypads just by using justify-content. This time, the lilypads have lots of space all around them.

    If you find yourself forgetting the possible values for a property, you can hover over the property name to view them. Try hovering over justify-content.

    #pond {
      display: flex;
      justify-content: space-around;
    }

    Now the lilypads on the edges have drifted to the shore, increasing the space between them. Use justify-content. This time, the lilypads have equal spacing between them.

    #pond {
      display: flex;
      justify-content: space-between;
    }

    Now use align-items to help the frogs get to the bottom of the pond. This CSS property aligns items vertically and accepts the following values:

    • flex-start: Items align to the top of the container.
    • flex-end: Items align to the bottom of the container.
    • center: Items align at the vertical center of the container.
    • baseline: Items display at the baseline of the container.
    • stretch: Items are stretched to fit the container.
    #pond {
      display: flex;
      align-items: flex-end;
    }

    The frogs need to get in the same order as their lilypads using flex-direction. This CSS property defines the direction items are placed in the container, and accepts the following values:

    • row: Items are placed the same as the text direction.
    • row-reverse: Items are placed opposite to the text direction.
    • column: Items are placed top to bottom.
    • column-reverse: Items are placed bottom to top.
    #pond {
      display: flex;
      flex-direction: row-reverse; 
    }

    Sometimes reversing the row or column order of a container is not enough. In these cases, we can apply the order property to individual items. By default, items have a value of 0, but we can use this property to set it to a positive or negative integer value.

    Use the order property to reorder the frogs according to their lilypads.

    #pond {
      display: flex;
    }
    
    .yellow {
      order: 1
    }

    Oh no! The frogs are all squeezed onto a single row of lilypads. Spread them out using the flex-wrap property, which accepts the following values:

    • nowrap: Every item is fit to a single line.
    • wrap: Items wrap around to additional lines.
    • wrap-reverse: Items wrap around to additional lines in reverse.
    #pond {
      display: flex;
      flex-wrap: wrap;
    }

    The two properties flex-direction and flex-wrap are used so often together that the shorthand property flex-flow was created to combine them. This shorthand property accepts the value of one of the two properties separated by a space.

    For example, you can use flex-flow: row wrap to set rows and wrap them.

    Try using flex-flow to repeat the previous level.

    #pond {
      display: flex;
      flex-flow: column wrap;
    }

    The frogs are spread all over the pond, but the lilypads are bunched at the top. You can use align-content to set how multiple lines are spaced apart from each other. This property takes the following values:

    • flex-start: Lines are packed at the top of the container.
    • flex-end: Lines are packed at the bottom of the container.
    • center: Lines are packed at the vertical center of the container.
    • space-between: Lines display with equal spacing between them.
    • space-around: Lines display with equal spacing around them.
    • stretch: Lines are stretched to fit the container.

    This can be confusing, but align-content determines the spacing between lines, while align-items determines how the items as a whole are aligned within the container. When there is only one line, align-content has no effect.

    #pond {
      display: flex;
      flex-wrap: wrap;
      align-content: flex-start
    }
  • 相关阅读:
    A1052. Linked List Sorting (25)
    A1032. Sharing (25)
    A1022. Digital Library (30)
    A1071. Speech Patterns (25)
    A1054. The Dominant Color (20)
    A1060. Are They Equal (25)
    A1063. Set Similarity (25)
    电子码表
    矩阵键盘
    对象追踪、临时对象追踪、绝对坐标与相对坐标
  • 原文地址:https://www.cnblogs.com/smileSmith/p/8066291.html
Copyright © 2011-2022 走看看