2014-01-15 56 views
5

铬32更新后,html元件的宽度(inputselect,..)由css具有这些属性定义 不起作用:铬v 32 - html元素大小问题

position:absolute; 
left:10px; 
right:20px; 

在铬31和所有其他浏览器的作品。

起来看看这款铬32

http://jsfiddle.net/EAkLb/7/

+0

我也测试过,这是正确的 –

+0

这里看起来和Chrome和FF相同,但Opera和Safari扩展了输入。 – j08691

回答

2

我猜这是什么W3C表示,渲染输入元素(我说我想和我dindn't放说,由于W3C规范链接的正确方法我没有找到它的官方链接)

一个简单的workarround是创建位置绝对和左右属性的容器div和创建一个宽度输入:100%;

<div class="container"> 
    <input type="text"/> 
</div> 

<style type="text/css"> 
    .container { 
     position:absolute; 
     left:10px; 
     right:20px; 
    } 
    .container input { 
     width: 100%; 
    } 
</style> 

http://jsfiddle.net/pjK8s/1/

如果你需要把填充比你需要的款式的容器看起来象输入,让输入是透明的

<div class="container"> 
    <input type="text"/> 
</div> 

<style type="text/css"> 
    .container { 
     position:absolute; 
     left:10px; 
     right:20px; 
     padding: 1px 8px; 
     margin: 2px 0px; 
     -webkit-appearance: textfield; 
    } 
    .container input { 
     width: 100%; 
     border: 0px; 
     margin: 0px; 
     padding: 0px; 
     background: transparent; 
     outline: none; 
    } 
</style> 

http://jsfiddle.net/Vyj22/1/