代码之家  ›  专栏  ›  技术社区  ›  Gary Green

HTML:浮动左右分辨率/按%调整大小问题

  •  0
  • Gary Green  · 技术社区  · 16 年前

    <style type="text/css">
    
    #content {
      width: 80%;
      float: left;
      height: 500px;
      border:2px solid #00ff00;
    }
    
    #rightbar {
      max-width: 200px;
      width: 17%;
      float: right;
      border:2px solid #ff0000;
    }
    
    #rightbar a {
      display: block;
      padding: 5px;
      background-color: #F0F4FF;
      margin: 3px;
    }
    #rightbar a:hover { background-color: #1D3E93; color: #fff; }
    </style>
    
    <div id="content">contents</div>
    <div id="rightbar">
      <a href="#">link 1</a>
      <a href="#">link 2</a>
      <a href="#">link 3</a>
    </div>
    
    2 回复  |  直到 16 年前
        1
  •  1
  •   jeroen    16 年前

    有两种方法可以获得您想要的结果:

    编辑:

    <style type="text/css">
    
    #content {
      overflow: hidden;
      height: 500px;
      border:2px solid #00ff00;
    }
    
    #rightbar {
      max-width: 200px;
      width: 17%;
      float: right;
      border:2px solid #ff0000;
    }
    
    #rightbar a {
      display: block;
      padding: 5px;
      background-color: #F0F4FF;
      margin: 3px;
    }
    #rightbar a:hover { background-color: #1D3E93; color: #fff; }
    </style>
    
    <div id="rightbar">
      <a href="#">link 1</a>
      <a href="#">link 2</a>
      <a href="#">link 3</a>
    </div>
    <!-- content needs to be placed after rightbar -->
    <div id="content">contents</div>
    
        2
  •  0
  •   Mike Robinson    16 年前
    1. 在这两个条之间,你有3%的空间。1000px的3%是30px。2000px的3%是60px。因此,如果你的右元素向右浮动,你会看到额外的空间。尝试将元素向左浮动。