我有以下带框架的html。在Chrome中,当我将浏览器缩放超过100%时,第二帧内容开始隐藏第一帧内容。作为要求,第一帧不应该有滚动。你有什么建议吗?它在IE上运行良好。
<!DOCTYPE HTML>
<html>
<head>
<title>HHH</title>
</head>
<frameset rows="120,*" frameborder="0">
<frame name="nav" src="/file1.pl" noresize="true" scrolling="No"
frameborder="0">
<frame name="gdl" src="/second.pl" scrolling="auto"
frameborder="0">
</frameset>
</html>
答案 0 :(得分:0)
你可以看看这些:
Frameset not showing up in FireFox or IE. Fine in Chrome..?
Any way of using frames in HTML5?
另一个想法是改用。也许你不会有这样的问题。
我希望这些有帮助
答案 1 :(得分:0)
myFix.js
//fix webkit browsers
if ('WebkitAppearance' in document.documentElement.style) {
document.onreadystatechange = function() {
if (document.readyState != 'complete')
return;
var oldLevel = 1;
//whether we're fixing 'rows' or 'cols'
var checking = 'rows';
var frameset = document.getElementById('set');
//get the hard coded values from the html
var values = frameset.getAttribute(checking).split(',');
//make sure not to change any %'s or *'s
var isPixels = new RegExp('[0-9]+');
for (var index = 0; index < values.length; ++index) {
if (isPixels.test(values[index]))
values[index] = new Number(values[index]);
}
var zoomCheck = function() {
//calculate zoom level
var level = window.outerWidth / window.innerWidth;
//if it hasn't changed, ignore
if (oldLevel == level)
return;
var newValues = new Array(values.length);
//copy each of the original values
for (var index = 0; index < values.length; ++index) {
newValues[index] = values[index];
//fix the ones we are meant to
if (values[index] instanceof Number)
newValues[index] *= level;
}
//apply the fix
frameset.setAttribute(checking, newValues.join(','));
oldLevel = level;
};
//periodically check
setInterval(zoomCheck, 1000);
};
}
your.html
<html>
<head>
<title>HHH</title>
<script type="text/javascript" src="myFix.js"></script>
</head>
<frameset id="set" rows="200,*" frameborder="0" border="0" framespacing="0">
<frame name="nav" src="/file1.pl" noresize="true" scrolling="No" frameborder="0">
<frame name="gdl" src="/second.pl" scrolling="auto" frameborder="0">
</frameset>
</html>