css 转换在不需要时显示滚动条
css transform displays scrollbar when not needed
我们具有 increasing/decreasing 内容缩放级别的功能。当用户增加缩放时,我们正在增加 css 属性 transform
的比例。当内容被放大时,父 div 甚至不需要显示滚动条。
请检查下面的代码和fiddle:
HTML:
<div id="viewport">
<div id="zoomDiv">
<p style="width:250px;height:150px;background-color:yellow">
hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j f
</p>
</div>
</div>
<a href="javascript:void(0)" onclick="transformDiv(0.1)" id="increase"> + </a>
<a href="javascript:void(0)" onclick="transformDiv(-0.1)" id="deccrease"> - </a>
<script>
var d = 1;
function transformDiv(n) {
d = d + n;
document.getElementById("zoomDiv").style.transform = "scale("+d+")";
}
</script>
CSS:
#viewport{width:300px;height:200px;border:1px solid #000;background-color:#FFF;overflow:auto}
#zoomDiv{transform}
Fiddle:https://jsfiddle.net/hyvr7bwn/
所有浏览器都会出现问题。
我已经更新了您的 fiddle,结果发现它需要以下 CSS 代码才能正确对齐。这只是在放大时将内容保持在左侧,这样就不会浪费 space 并且在不需要时不会显示滚动条。
-webkit-transform-origin: top left;
float:left;
我们具有 increasing/decreasing 内容缩放级别的功能。当用户增加缩放时,我们正在增加 css 属性 transform
的比例。当内容被放大时,父 div 甚至不需要显示滚动条。
请检查下面的代码和fiddle:
HTML:
<div id="viewport">
<div id="zoomDiv">
<p style="width:250px;height:150px;background-color:yellow">
hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j fs fsd fsdf hsjd hs jdfhsdf hsf j f
</p>
</div>
</div>
<a href="javascript:void(0)" onclick="transformDiv(0.1)" id="increase"> + </a>
<a href="javascript:void(0)" onclick="transformDiv(-0.1)" id="deccrease"> - </a>
<script>
var d = 1;
function transformDiv(n) {
d = d + n;
document.getElementById("zoomDiv").style.transform = "scale("+d+")";
}
</script>
CSS:
#viewport{width:300px;height:200px;border:1px solid #000;background-color:#FFF;overflow:auto}
#zoomDiv{transform}
Fiddle:https://jsfiddle.net/hyvr7bwn/
所有浏览器都会出现问题。
我已经更新了您的 fiddle,结果发现它需要以下 CSS 代码才能正确对齐。这只是在放大时将内容保持在左侧,这样就不会浪费 space 并且在不需要时不会显示滚动条。
-webkit-transform-origin: top left;
float:left;