html - 为什么按钮元素不像跨度那样占据容器的整个宽度?

标签 html css

<分区>

现在才注意到这个问题,如果我有一个 span 元素,如果我应用 display: block 样式,我可以使它成为父容器的整个宽度,但是我我注意到当元素是 button 时不会发生同样的情况。 问题是,为什么?为什么按钮的行为不同(如果我没记错的话,默认情况下它是一个 block 元素)

我已经通过将 width:100% 应用于按钮来修复它,但不确定为什么它的行为不同。

测试 fiddle :https://jsfiddle.net/9k3pjy9e/1/

最佳答案

Button: = inline-block "默认情况下,按钮的大小由其文本内容决定(与其内容一样宽)。使用width属性更改按钮的宽度。”

More info here

Span: = inline 内联元素不在新行开始,只占用必要的宽度。

将其设置为 display: block; 然后:

block 元素: block 级元素总是从一个新行开始,并占据可用的整个宽度(尽可能向左和向右延伸)。

因此,虽然这适用于 span 元素,但对于 button 元素,需要设置 width

关于html - 为什么按钮元素不像跨度那样占据容器的整个宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40872566/

上一篇:jquery - JQuery 对话框后面的 CSS 下拉菜单

下一篇:jquery - 当我点击手机屏幕上的后退按钮时图像消失

相关文章:

html - 如何在 IE 10 的 IE 9、8 和 7 模式下删除十字标志和密码显示标志?

CSS 选择器效率

html - 在 Angular 6 中将 HTML 转换为 PDF

javascript - vue a-href下载不下载

javascript - Bootstrap 轮播不显示图像

javascript - 在 iOS Safari 上禁用滚轮选择器?

javascript - 将第三级添加到 CSS 菜单

javascript - 如何从一个div中选择一个元素到另一个?

javascript - 如何制作脚注以在单击的位置显示其引用的文本?

css - 如何添加分隔两列的垂直线?