javascript - 为什么用 javascript 创建的文本框显示不同?

标签 javascript html css

为什么在这段代码中,当我按下 push 时创建的文本框与已经显示的不完全相同?

<html>  
<body id="bd">  
<input type="text" style="width: 30px; padding: 2px; border: 1px solid black"/>  
<input type="submit" value="Push" onclick="test()"/>   
<script type="text/javascript">   
function test() {   
    var txt = document.createElement('input');  
    txt.type = 'text';   
    txt.style = "width: 30px; padding: 2px; border: 1px solid black";   
    document.getElementById('bd').appendChild(txt);  
}  
</script>  
</body>  
</html>   

更新:
我在@Bergi 的 fiddle 中看到的:

enter image description here

最佳答案

style 属性不是字符串。它是一个对象,其中每个 CSS 属性都表示为一个 DOM 属性。

它还有the cssText property其中包括所有规则。

txt.style.cssText = "width: 30px; padding: 2px; border: 1px solid black";

关于javascript - 为什么用 javascript 创建的文本框显示不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16904967/

相关文章:

javascript - 如何获取浏览器不支持的 CSS 属性的值?

javascript - jQuery:从多个 div 中动画删除样式属性

JavaScript 原型(prototype)设计 : single prototype object or not?

html - 如何在IE中的选择框中获得水平滚动条?

javascript - 如何在 css/html/javascript 中为我的文本添加边框

Javascript 选择库中的元素

html - Angularjs如何在模板html中引用本地镜像

javascript - 到底什么是 block 渲染?

html - webkit 关键帧在最小化时中断

html - 减少css中的重复代码