html – 为什么显示:块不伸展按钮或输入元素

我想了解这个问题背后的原因:

< button>背后的原因是什么?或< input>元素不像其他元素一样表现为设置为显示:block!

我不是在寻找解决这个问题的解决方法,所以请不要指向this answer,因为它没有回答这个问题.

Here’s a js-fiddle that illustrates the problem

更新1:@Pete是正确的,元素的认大小属性是即使在块上设置大小,因为您可以将< input>的大小和cols属性in this fiddle.和< textarea>改变他们的宽度这解决了我的一部分问题.

考虑到这一点,我的问题现在是,为什么< button>元素不像其他块元素那样行为?这对我来说是一个谜!

解决方法

我认为一个认值被分配给输入的size属性,这意味着除非你特别重写它,否则你的宽度不会是100%

如果您查看firefox specification并向下滚动到关于大小的部分,您可以看到它们的认值为20

我不知道按钮的属性,导致更改为阻止时不会为100%的宽度

相关文章

vue阻止冒泡事件 阻止点击事件的执行 &lt;div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些