css - 将页面分成两部分

标签 css html position

What I am trying to achieve我有一个 facebook 应用程序,我现在正在从事前端工作。我刚刚开始使用 css 和 html,所以这可能是一个愚蠢的问题 - 对此感到抱歉。 我要做的是将页面分成两部分。我为此创建了两个 div,但问题在于它们的定位方式。我的代码如下:

<style>
.choose_div{
  width: 20%;
  height: auto;
  padding: 1px;
  left: 0px;
  border: 2px;
}
.frame_div{
  right:0px;
  height: auto;
  width: 80%;
  border: 2px 2px 2px 2px;
  position: relative;
}
</style>
  <div id="choose_div">
    <ul>
      <li class="li_choose">
        <div class="li_div">
          <p>Save</p>
            <img src="arrow.jpg" id="arrow_save" style="width:10%;height:10%">
           <hr>
        </div>
      </li>
    </ul>
  </div>
<div id="frame_div">
  <iframe id="frame_opened">
</div>

我认为 right:0px; 一个和 left:0px; 另一个会正确定位它们,但它们只是一个在另一个的底部.
任何人都可以帮忙吗?

最佳答案

这是使用 float:left; 执行您要求的正常方法。不过,您的样式还有一些其他问题:

  • 您的目标是 .choose_div 类 (.),而不是 id (#)
  • 执行此操作时需要使用 box-sizing:border-box 否则 paddingborder 会添加到顶部width:20% 使宽度大于 20%。

jsFiddle

#choose_div {
    width: 20%;
    height: auto;
    padding: 1px;
    border: 2px;
    float:left;
    box-sizing:border-box;
}
#frame_div {
    height: auto;
    width: 80%;
    border: 2px 2px 2px 2px;
    float:left;
    box-sizing:border-box;
}

至于 leftright,如果使用 position:absolute,它们可用于对齐到屏幕的特定一侧。 position:relative 只是将元素移动一个特定的量,例如 left:2px 会将元素向左移动 2 个像素。

position:absolute 将元素定位在其最近的具有非静态 position 的祖先上。那么可以用left/right/top/bottom来表示祖先的边。

关于css - 将页面分成两部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15851822/

相关文章:

javascript - CSS3如何计算缩放后的高度和宽度

python - 子字符串在字符串中的位置

javascript - ReactJS - ref 返回 "undefined"

javascript - 如何仅在鼠标悬停时显示文本

javascript - ul 上的垂直滑动器丢失了右侧边界半径?

android - 隐藏的溢出不适用于 Android

像 css3 转换一样的 Javascript

c# - 我可以将动态创建的 c# 表转换为 html 字符串吗?

javascript - Jquery从创建元素中删除 ' '

android - 动态设置布局位置