这真是太神秘了。我有一个带有textarea字段的表格。我删除了装饰器和所有其他东西,并使用行和列(在Zend Framework中开发)setAttribs
。文本区域仍然非常宽,从容器中溢出并进入视口之外。我可以根据需要添加屏幕截图。
这是基本代码:
<form id="edit-pending-email" enctype="application/x-www-form-urlencoded" method="post" action="[path]/email/edit-pending-email/">
<label for="salutation" class="optional">Salutation</label>
<input type="text" name="salutation" id="salutation" value="Yo" /> <p><label for="content" class="optional">Body of Email</label>
<textarea name="content" id="content" cols="40" rows="30"> blah blah ... text goes here ...
</textarea></p>
<input type="submit" name="save" id="save" value="Save" />
<input type="submit" name="cancel" id="cancel" value="Cancel" /></form>
这里是奇怪的地方。
我看过CSS(没关系,但我检查了),没有对cols的引用,唯一的宽度引用是对其他元素的引用。简而言之,绝对没有理由要设置cols的状态。
但是,是。
设置width: auto
后,cols属性对我有用(至少在Chrome中,我还没有测试其他浏览器)。
textarea {
width: auto;
}
我终于找到了这个。确实在样式表中。也就是说,它不在样式表中,但应该存在。
出于种种原因,我不明白,无论cols说什么,文本区域(也适用于其他元素)都希望扩展到最大。这对我来说没有任何意义,但确实如此。
解决此问题的方法是设置最大宽度。一旦这样做,该元素就会表现出来并调整为适当的宽度。注意:宽度不行。仅最大宽度有效。
Geez。
尝试将max-width设置为:您想要以%为单位的exp(60%)。应该这样做)>