我正在尝试根据不同的浏览器大小重新调整图像大小。我使用此代码:JavaScript支持百分比单位吗?
document.getElementById("myImg").style.height = (document.body.clientHeight) * 0.5;
但如果我不使用DOCTYPE
,如果我在HTML文件中使用DOCTYPE
,那么这是行不通的作品。有人说:
在使用有效的DTD属性值必须有单位...
于是,我就加个单元%:
document.getElementById("myImg").style.height = (document.body.clientHeight) * 0.5 + "%";
,但它不” t工作,它只能与px单位代替:
document.getElementById("myImg").style.height = (document.body.clientHeight) * 0.5 + "px";
如何使%单位工作,因为它与px单位?这甚至有可能吗?
如果你正在服用的身体的clientHeight,其结果是在像素(PX)。如果你乘以0.5,结果是像素数量的一半。你为什么要把这个数字变成一个百分比? – Travesty3 2012-02-28 17:24:52
@ Travesty3:我并不是真的想将* px *变成百分比*%*,我只想将图像大小设置为窗口大小的50%。 – XO39 2012-02-28 17:33:37
你的代码的最后一点应该可以做到这一点。到目前为止,我使用的最简单的方法是使用'document.documentElement.clientHeight',这已经证明是我最好的跨浏览器兼容的检查方法。请记住,如果身体长于窗口(使用滚动条),您的解决方案可能无法按预期工作。 – Travesty3 2012-02-28 17:44:19