如何在 <object> 嵌入上获得 height=100%
Posted
技术标签:
【中文标题】如何在 <object> 嵌入上获得 height=100%【英文标题】:How to get height=100% on <object> Embed 【发布时间】:2013-05-11 03:46:57 【问题描述】:我正在尝试插入以下代码,但它不起作用。 我无法用这个获得 100% 的高度。谁能帮我? 谢谢!
<body style="overflow:hidden;">
<TABLE align=left width=234 border="0" cellpadding="0" cellspacing="0">
<TR>
<TD valign=top align=center WIDTH="234" >
<object data="EmbedPage.html" type="text/html" style="width: 230px;height:100%;"></object>
</TD>
</TR>
</TABLE>
</body>
【问题讨论】:
简短的回答是容器也应该是 100%。 我找到了这个并为我工作。 ***.com/questions/16326445/… 【参考方案1】:我使用了以下代码,它在浏览器的宽度和高度上完美呈现 样式="宽度:100vw;高度:100vh;"
【讨论】:
【参考方案2】:如果您想将嵌入对象跨越全屏,请使用 100vh 作为高度。
<body>
<object data="EmbedPage.html" type="text/html" style="width:100%;height:100vh;">
</object>
</body>
【讨论】:
我认为@user2261793 永远不会接受正确的答案,但这对我有用。 这似乎对我不起作用。我得到两个滚动条,一个用于对象内容,一个用于页面。【参考方案3】:body, html
width: 100%;
height: 100%;
<body>
<table class="flash-container" style="height: 100%; width:100%">
<tr style="height: 100%; width:100%">
<td style="height: 100%; width:100%">
<object >
<param name="autoPlay" value="true"></param>
<embed allowfullscreen="true" autoPlay="true" flashvars="autoplay=true&play=ture" allownetworking="all" id="pptShow" allowscriptaccess="always" src="http://www.weilaijiaoxue.com:9096/upload/2016/4/13/swf_20160413115509559.swf" type="application/x-shockwave-flash" ></embed>
</object>
</td>
</tr>
</table>
</body>
【讨论】:
【参考方案4】:只需将其从表中移除即可。
<BODY style="overflow:hidden; height:100%;">
<object data="http://www.misgeret.co.il/Ebay/Famus/SideMenuFamus.html" type="text/html" style="float:left;width:230px;height:100%"></object>
</BODY>
http://jsfiddle.net/ma9ic/QtKMa/5/
表格单元格中的 100% 高度总是很痛苦。从技术上讲,TD 没有高度(因为这取决于其内容)。你要求浏览器做的是让孩子 100% 的父母,这是 100% 的孩子,这是 100% 的父母......你可以看到这可能是一个问题。
您可以尝试向 TD 添加显式高度并在桌子上使用 table-layout:fixed。至少这样浏览器就知道父级的高度而不需要子级的高度,但这仍然可能不起作用。
您可能需要重新考虑如何处理此问题。
这会显示使用设置高度和使用 iframe 的结果
<BODY style="overflow:hidden;height:100%;">
<TABLE align=left width=234 border="1" cellpadding="0" cellspacing="0">
<TR>
<TD valign=top align=center WIDTH="234" >
<iframe src="http://www.misgeret.co.il/Ebay/Famus/SideMenuFamus.html" style="border:0px #FFFFFF none;" name="myiFrame" scrolling="no" frameborder="0" margin margin ></iframe>
</TD>
</TR>
</TABLE>
</BODY>
http://jsfiddle.net/ma9ic/QtKMa/6/
希望对你有帮助
【讨论】:
谢谢你的回答,但我仍然看到滚动,我不需要滚动+使用表格元素,因为页面包含更多基于表格的元素,更改所有页面非常复杂......我没有别的办法吗? 谢谢,我开始觉得它比用 div 重写代码更复杂...无论如何,我不能使用 iframe,我只需要使用 OBJECT 元素,如何禁用滚动在“div”版本上? (并且仍然“自动”获得 100% 的高度)jsfiddle.net/QtKMa/3 溢出-y:隐藏;溢出-x:隐藏;【参考方案5】:试试这个
<body style="overflow:hidden;height:100%;">
<object data="EmbedPage.html" type="text/html" style="float:left;width:230px;height:100%;">
</object>
</body>
【讨论】:
它不起作用...我没有得到 100% 的高度 看看这里的屏幕截图:clip2net.com/s/54unnx 你能把它放在jsfiddle.net上吗 我还需要禁用滚动 在正文或对象上滚动以上是关于如何在 <object> 嵌入上获得 height=100%的主要内容,如果未能解决你的问题,请参考以下文章
如何将 SVG 嵌入到来自 Cross Origin url 的 html <object> 标签中(s3_url/image.svg)