使用Flex实现5种常用布局

Sticky Footer

成都创新互联公司长期为成百上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为雁峰企业提供专业的做网站、成都网站设计雁峰网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。

经典的上-中-下布局。

当页面内容高度小于可视区域高度时,footer 吸附在底部;当页面内容高度大于可视区域高度时,footer 被撑开排在 content 下方

demo link

 

 
 
 
 
  1.   
  2.   
  3.   
    HEADER
      
  4.   
  5.   
    CONTENT
      
  6.   
  7.   
    FOOTER
      
  8.   
  9.  

 

 
 
 
 
  1. body { 
  2.  
  3.   min-height: 100vh; 
  4.  
  5.   display: flex; 
  6.  
  7.   flex-direction: column; 
  8.  
  9.  
  10. article { 
  11.  
  12.   flex: auto; 
  13.  

Fixed-Width Sidebar

在上-中-下布局的基础上,加了左侧定宽 sidebar。

demo link

 

 
 
 
 
  1.  
  2.  
  3.   
    HEADER
     
  4.  
  5.    
  6.  
  7.      
  8.  
  9.     
    CONTENT
     
  10.  
  11.   
 
  •  
  •   
    FOOTER
     
  •  
  •  
  •  
     
     
     
    1. body { 
    2.  
    3.   min-height: 100vh; 
    4.  
    5.   display: flex; 
    6.  
    7.   flex-direction: column; 
    8.  
    9.  
    10. .content { 
    11.  
    12.   flex: auto; 
    13.  
    14.   display: flex; 
    15.  
    16.  
    17. .content article { 
    18.  
    19.   flex: auto; 
    20.  

    Sidebar

    左边是定宽 sidebar,右边是上-中-下布局。

    demo link

     

     
     
     
     
    1.  
    2.  
    3.    
    4.  
    5.    
    6.  
    7.     
      HEADER
       
    8.  
    9.     
      CONTENT
       
    10.  
    11.     
      FOOTER
       
    12.  
    13.   
     
  •  
  •  
  •  

     
     
     
     
    1. body { 
    2.  
    3.   min-height: 100vh; 
    4.  
    5.   display: flex; 
    6.  
    7.  
    8. aside { 
    9.  
    10.   flex: none; 
    11.  
    12.  
    13. .content { 
    14.  
    15.   flex: auto; 
    16.  
    17.   display: flex; 
    18.  
    19.   flex-direction: column; 
    20.  
    21.  
    22. .content article { 
    23.  
    24.   flex: auto; 
    25.  

    Sticky Header

    还是上-中-下布局,区别是 header 固定在顶部,不会随着页面滚动。

    demo link

     

     
     
     
     
    1.  
    2.  
    3.   
      HEADER
       
    4.  
    5.   
      CONTENT
       
    6.  
    7.   
      FOOTER
       
    8.  

     

     
     
     
     
    1. body { 
    2.  
    3.   min-height: 100vh; 
    4.  
    5.   display: flex; 
    6.  
    7.   flex-direction: column; 
    8.  
    9.   padding-top: 60px; 
    10.  
    11.  
    12. header { 
    13.  
    14.   height: 60px; 
    15.  
    16.   position: fixed; 
    17.  
    18.   top: 0; 
    19.  
    20.   left: 0; 
    21.  
    22.   right: 0; 
    23.  
    24.   padding: 0; 
    25.  
    26.  
    27. article { 
    28.  
    29.   flex: auto; 
    30.  
    31.   height: 1000px; 
    32.  

    Sticky Sidebar

    左侧 sidebar 固定在左侧且与视窗同高,当内容超出视窗高度时,在 sidebar 内部出现滚动条。左右两侧滚动条互相独立。

    demo link

     
     
     
     
    1.  
    2.  
    3.   
    4.  
    5.     ASIDE 
    6.  
    7.     

      item

       
    8.  
    9.     

      item

       
    10.  
    11.      
    12.  
    13.     

      item

       
    14.  
    15.    
    16.  
    17.    
    18.  
    19.     
      HEADER
       
    20.  
    21.     
      CONTENT
       
    22.  
    23.     
      FOOTER
       
    24.  
    25.   
     
  •  
  •  
  •  

     
     
     
     
    1. body { 
    2.  
    3.   height: 100vh; 
    4.  
    5.   display: flex; 
    6.  
    7.  
    8. aside { 
    9.  
    10.   flex: none; 
    11.  
    12.   width: 200px; 
    13.  
    14.   overflow-y: auto; 
    15.  
    16.   display: block; 
    17.  
    18.  
    19. .content { 
    20.  
    21.   flex: auto; 
    22.  
    23.   display: flex; 
    24.  
    25.   flex-direction: column; 
    26.  
    27.   overflow-y: auto; 
    28.  
    29.  
    30. .content article { 
    31.  
    32.   flex: auto; 
    33.  
    34. }  

    网页题目:使用Flex实现5种常用布局
    本文URL:http://www.shufengxianlan.com/qtweb/news31/398331.html

    网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

    广告

    声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

    猜你还喜欢下面的内容

    品牌网站建设知识

    各行业网站