我的iframe有问题。我真的希望框架能根据iframe中的内容自动调整高度。我真的希望通过CSS而不是JavaScript来实现这一点。但是,如果我有需要的话,我会使用JavaScript。
我试过height: 100%;
和height: auto;
等,我只是不知道还能试什么!
这是我的CSS。对于框架...
#frame {
position: relative;
overflow: hidden;
width: 860px;
height: 100%;
}
然后是框架的页面。
#wrap {
float: left;
position: absolute;
overflow: hidden;
width: 780px;
height: 100%;
text-align: justify;
font-size: 16px;
color: #6BA070;
letter-spacing: 3px;
}
网页的程式码如下所示...
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" �� "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>...</title>
<link rel="stylesheet" href="style.css" type="text/css" />
</head>
<body>
<div id="container">
<div id="header">
</div>
<div id="navigation">
<a href="/" class="navigation">home</a>
<a href="about.php" class="navigation">about</a>
<a href="fanlisting.php" class="navigation">fanlisting</a>
<a href="reasons.php" class="navigation">100 reasons</a>
<a href="letter.php" class="navigation">letter</a>
</div>
<div id="content" >
<h1>Update Information</h1>
<iframe name="frame" id="frame" src="http://website.org/update.php" allowtransparency="true" frameborder="0"></iframe>
</div>
<div id="footer">
</div>
</div>
</body>
</html>
请注意,iframe中的URL与显示iframe的网站不同。但是,我可以访问这两个网站。
有人能帮忙吗?
8条答案
按热度按时间gdx19jrr1#
我也遇到了同样的问题,但发现以下方法效果很好:
创建响应式YouTube嵌入的关键是填充和容器元素,这允许您为其给予固定的纵横比。您也可以将此技术用于大多数其他基于iframe的嵌入,如幻灯片。
以下是典型的YouTube嵌入代码,具有固定的宽度和高度:
如果我们能给予它100%的宽度就好了,但是因为高度是固定的,所以它就不起作用了。你需要做的是把它 Package 在一个容器中,如下所示(注意类名和删除的宽度和高度):
并使用以下CSS:
下面是我找到解决方案的页面:
https://www.h3xed.com/web-development/how-to-make-a-responsive-100-width-youtube-iframe-embed
根据您的高宽比,您可能需要调整
padding-bottom: 56.25%;
以获得正确的高度。o2rvlv0m2#
这是我的纯CSS解决方案:)
添加,滚动yes到您的iframe。
诀窍:)
你不需要担心响应速度:)
46qrfjad3#
@SweetSpice,用位置作为绝对值代替相对值,这样就行了
8ftvxx2r4#
hjpotter92
将以下内容添加到您的分区:
并将iframe更改为:
这是张贴Here
不过,它确实使用JavaScript,但它简单易用,代码可以修复您的问题。
ugmeyewa5#
https://jsfiddle.net/umd2ahce/1/
uemypmqf6#
您必须使用
absolute
位置沿着您想要的高度。在您的CSS中,请执行以下操作:30byixjq7#
你应该注意到div标签的行为就像什么都没有一样,只是让你在里面放一些东西。这意味着如果你在div标签中插入一个有100行文本的段落,它会显示所有的文本,但是它的高度不会改变以包含所有的文本。
所以你必须使用一个CSS & HTML技巧来处理这个问题。这个技巧非常简单。你必须使用一个空div标签和*class=“clear”*,然后你必须将这个类添加到你的CSS中。还要注意,你的CSS文件中有#wrap,但是你没有任何带有这个id的标签。总之,你必须将你的代码更改为如下所示:
HTML程式码:
并将此行添加到CSS文件中:
vyswwuz28#
根据**this post**
您需要将
!important
css修改器添加到您的高度百分比中。希望这对你有帮助。