Set auto height and width in CSS/HTML for different screen sizes

后端 未结 3 1787
抹茶落季
抹茶落季 2021-02-04 21:18

I have 2 issues with this layout :

  1. .feature_content (grey background) adapt it\'s height and width to different screen sizes
3条回答
  •  被撕碎了的回忆
    2021-02-04 21:40

    ///UPDATED DEMO 2 WATCH SOLUTION////

    I hope that is the solution you're looking for! DEMO1 DEMO2

    With that solution the only scrollbar in the page is on your contents section in the middle! In that section build your structure with a sidebar or whatever you want!

    You can do that with that code here:

    
    
    THE CONTENTS GOES HERE
    Footer

    With that css:

    .navTop{
    width:100%;
    border:1px solid black;
    float:left;
    }
    .container{
    width:100%;
    float:left;
    overflow:scroll;
    }
    .bottomFooter{
    float:left;
    border:1px solid black;
    width:100%;
    }
    

    And a bit of jquery:

    $(document).ready(function() {
      function setHeight() {
        var top = $('.navTop').outerHeight();
        var bottom = $('footer').outerHeight();
        var totHeight = $(window).height();
        $('section').css({ 
          'height': totHeight - top - bottom + 'px'
        });
      }
    
      $(window).on('resize', function() { setHeight(); });
      setHeight();
    });
    

    DEMO 1

    If you don't want jquery

    Title

    CONTENTS
    Footer

    CSS

    *{
    margin:0;padding:0;    
    }
    html,body{
    height:100%;
    width:100%;
    }
    body{
    display:table;
    }
    .row{
    width: 100%;
    background: yellow;
    display:table-row;
    }
    .container{
    background: pink;
    height:100%; 
    }
    .content {
    display: block;
    overflow:auto;
    height:100%;
    padding-bottom: 40px;
    box-sizing: border-box;
    }
    footer{ 
    position: fixed; 
    bottom: 0; 
    left: 0; 
    background: yellow;
    height: 40px;
    line-height: 40px;
    width: 100%;
    text-align: center;
    }
    .sidebar{
    float:left;
    background:green;
    height:100%;
    width:10%;
    }
    .contents{
    float:left;
    background:red;
    height:100%;
    width:90%;
    overflow:auto;
    }
    

    DEMO 2

提交回复
热议问题