【发布时间】:2017-09-21 15:56:30
【问题描述】:
在我使用 Crosswalk 的 Android Hybrid 应用程序中,需要在运行时将 CSS3 转换应用于 HTML 元素。我认为这是一项相对琐碎的任务,但发现它根本行不通。最初我怀疑这是由于规范的 Crosswalk/Chromium 实现中缺少功能。但是,为了安全起见,我的桌面 Chrome 浏览器中的内容大致相同,如下所示
document.getElementById('btn').addEventListener('click', transIt);
function transIt() {
alert('Transforming now!');
var blobStyle = document.getElementById('blob').style;
blobStyle.webkitTransform = 'translate(100px,50px);';
blobStyle.webkitTransform = 'translate(100px,50px);';
alert('Did it work?');
}
#main {
position: relative;
margin: auto;
margin-top: 20%;
height: 200px;
width: 50%;
border: 1px solid red;
border-radius: 8px;
box-sizing: border-box;
padding: 1em;
}
#blob {
position: absolute;
border: 1px solid blue;
background-color: blue;
border-radius: 2em;
height: 2em;
width: 2em;
left: calc(50% - 1em);
top: calc(50% - 1em);
}
<div id='main'>
<div id='blob'> </div>
</div>
<button id='btn'>Transform It</button>
令我惊讶的是,这个相对简单的代码在 Windows 上的 Chrome 中也没有提供预期的结果。要么我在这里做错了我无法发现的事情,要么还有其他潜在的问题在起作用。也许这里有人可能有我没有的洞察力。
【问题讨论】:
标签: javascript html css css-transforms