javascript - 使中间 iframe 占据整个 div 宽度

标签 javascript html css iframe

我在内容部分有一个 iframe。

如何让它占据整个 div 完全覆盖该区域?

<!DOCTYPE html>
<html>
  <head>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <base target="_top">
    <style>
    
html,
body {
  height: 100%;
  margin: 0
}

.box {
  display: flex;
  flex-flow: column;
  height: 100%;
}

.box .row {
  border: 1px dotted grey;
}

.box .row.header {
  flex: 0 1 auto;
  /* The above is shorthand for:
  flex-grow: 0,
  flex-shrink: 1,
  flex-basis: auto
  */
}

.box .row.content {
  flex: 1 1 auto;
}

.box .row.footer {
  flex: 0 1 40px;
}

iframe{

width:100%;
height:100%;
    }
    </style>
  </head>
  <body>

<div class="box">
  <div class="row header">
    <p><b>header</b>
      <br />
      <br />(sized to content)</p>
  </div>
  <div class="row content">

      <iframe scrolling="no" class="second-row" src="https://drive.google.com/open?id=1JIJRpPOyPr7beicfU1oXpjzERQWDk29Esz5zLRJfzWs" frameborder="0"></iframe>

  </div>
  <div class="row footer">
    <p><b>footer</b> (fixed height)</p>
  </div>
</div>


</body>
</html>

此 iframe 不占据内容的完整覆盖区域。 IFrame(内联框架)是嵌入网站上另一个 HTML 文档中的 HTML 文档。 IFrame HTML 元素通常用于将其他来源的内容(例如广告)插入到网页中。

最佳答案

添加 position: relative;.box .row.content。和 position: absolute;iframe

html, body {
  height: 100%;
  margin: 0
}
.box {
  display: flex;
  flex-flow: column;
  height: 100%;
}
.box .row {
  border: 1px dotted grey;
}
.box .row.header {
  flex: 0 1 auto;/* The above is shorthand for:
  flex-grow: 0,
  flex-shrink: 1,
  flex-basis: auto
  */
}
.box .row.content {
	flex: 1 1 auto;
	position: relative; /*Added */
}
.box .row.footer {
	flex: 0 1 40px;
}
iframe {
  width: 100%;
  height: 100%;
  position: absolute; /* Added */
}
<div class="box">
  <div class="row header">
    <p><b>header</b> <br />
    <br />
    (sized to content)</p>
  </div>
  <div class="row content">
    <iframe scrolling="no" class="second-row" src="https://drive.google.com/open?id=1JIJRpPOyPr7beicfU1oXpjzERQWDk29Esz5zLRJfzWs" frameborder="0"></iframe>
  </div>
  <div class="row footer">
    <p><b>footer</b> (fixed height)</p>
  </div>
</div>

关于javascript - 使中间 iframe 占据整个 div 宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49187405/

相关文章:

javascript - typescript如何实现枚举?

javascript - 如何仅使用 javascript 将 facebook 的赞按钮翻译成另一种语言?

javascript - 具有可拖动内容的 CKEditor 4 小部件

javascript - 将工具提示 (div) 与文本 (span) 对齐。可能的?

html - 一线伪元素不适用于 p 元素

javascript - 在控制台中列出正在运行的 Controller 实例及其 this 变量?

html - 固定列滚动表

javascript - 图像没有完全向左移动

python - 选择换行符之间的值并将其存储到列表中

javascript - 如何获得此表单验证代码的正确输出?