zoukankan      html  css  js  c++  java
  • CSS: Flexbox

    Use flexbox to create a responsive website, containing a flexible navigation bar and flexible content:

    <!DOCTYPE html>
    <html>
    <head>
    <title>Page Title</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <style>
    * {
      box-sizing: border-box;
    }
    
    /* Style the body */
    body {
      font-family: Arial;
      margin: 0;
    }
    
    /* Header/logo Title */
    .header {
      padding: 60px;
      text-align: center;
      background: #1abc9c;
      color: white;
    }
    
    /* Style the top navigation bar */
    .navbar {
      display: flex;
      background-color: #333;
    }
    
    /* Style the navigation bar links */
    .navbar a {
      color: white;
      padding: 14px 20px;
      text-decoration: none;
      text-align: center;
    }
    
    /* Change color on hover */
    .navbar a:hover {
      background-color: #ddd;
      color: black;
    }
    
    /* Column container */
    .row {  
      display: flex;
      flex-wrap: wrap;
    }
    
    /* Create two unequal columns that sits next to each other */
    /* Sidebar/left column */
    .side {
      flex: 30%;
      background-color: #f1f1f1;
      padding: 20px;
    }
    
    /* Main column */
    .main {
      flex: 70%;
      background-color: white;
      padding: 20px;
    }
    
    /* Fake image, just for this example */
    .fakeimg {
      background-color: #aaa;
      width: 100%;
      padding: 20px;
    }
    
    /* Footer */
    .footer {
      padding: 20px;
      text-align: center;
      background: #ddd;
    }
    
    /* Responsive layout - when the screen is less than 700px wide, make the two columns stack on top of each other instead of next to each other */
    @media screen and (max- 700px) {
      .row, .navbar {   
        flex-direction: column;
      }
    }
    </style>
    </head>
    <body>
    
    <!-- Note -->
    <div style="background:yellow;padding:5px">
      <h4 style="text-align:center">Resize the browser window to see the responsive effect.</h4>
    </div>
    
    <!-- Header -->
    <div class="header">
      <h1>My Website</h1>
      <p>With a <b>flexible</b> layout.</p>
    </div>
    
    <!-- Navigation Bar -->
    <div class="navbar">
      <a href="#">Link</a>
      <a href="#">Link</a>
      <a href="#">Link</a>
      <a href="#">Link</a>
    </div>
    
    <!-- The flexible grid (content) -->
    <div class="row">
      <div class="side">
        <h2>About Me</h2>
        <h5>Photo of me:</h5>
        <div class="fakeimg" style="height:200px;">Image</div>
        <p>Some text about me in culpa qui officia deserunt mollit anim..</p>
        <h3>More Text</h3>
        <p>Lorem ipsum dolor sit ame.</p>
        <div class="fakeimg" style="height:60px;">Image</div><br>
        <div class="fakeimg" style="height:60px;">Image</div><br>
        <div class="fakeimg" style="height:60px;">Image</div>
      </div>
      <div class="main">
        <h2>TITLE HEADING</h2>
        <h5>Title description, Dec 7, 2017</h5>
        <div class="fakeimg" style="height:200px;">Image</div>
        <p>Some text..</p>
        <p>Sunt in culpa qui officia deserunt mollit anim id est laborum consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco.</p>
        <br>
        <h2>TITLE HEADING</h2>
        <h5>Title description, Sep 2, 2017</h5>
        <div class="fakeimg" style="height:200px;">Image</div>
        <p>Some text..</p>
        <p>Sunt in culpa qui officia deserunt mollit anim id est laborum consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco.</p>
      </div>
    </div>
    
    <!-- Footer -->
    <div class="footer">
      <h2>Footer</h2>
    </div>
    
    </body>
    </html>

    Flexbox Elements

    To start using the Flexbox model, you need to first define a flex container.

    <!DOCTYPE html>
    <html>
    <head>
    <style>
    .flex-container {
      display: flex;
      background-color: DodgerBlue;
    }
    
    .flex-container > div {
      background-color: #f1f1f1;
      margin: 10px;
      padding: 20px;
      font-size: 30px;
    }
    </style>
    </head>
    <body>
    
    <div class="flex-container">
      <div>1</div>
      <div>2</div>
      <div>3</div>  
    </div>
    
    <p>A Flexible Layout must have a parent element with the <em>display</em> property set to <em>flex</em>.</p>
    
    <p>Direct child elements(s) of the flexible container automatically becomes flexible items.</p>
    
    </body>
    </html>

    The flex container properties are:

    The flex-direction Property

    The flex-direction property defines in which direction the container wants to stack the flex items.

     column: (from top to bottom)
     row: (from bottom to top)
    The column-reverse value stacks the flex items vertically (but from bottom to top)

    The row-reverse value stacks the flex items horizontally (but from right to left)

    The flex-wrap Property

    The flex-wrap property specifies whether the flex items should wrap or not.

  • 相关阅读:
    C# 打印多页tif
    页面动态加载js文件
    CPrintDialog 构造函数参数详解
    DEVMODE 结构体
    对C#对象的Shallow、Deep Cloning认识【转】
    PowerShell 启动应用程序【转】
    中文网页的字体
    css3自适应布局单位vw,vh你知道多少?
    微信小程序轮播图宽高计算
    更改wordpress的默认登录页面名称wp-login
  • 原文地址:https://www.cnblogs.com/Nyan-Workflow-FC/p/10637159.html
Copyright © 2011-2022 走看看