我想让我的按钮像跨度一样在里面显示内联和折 break line

参见小提琴:https://jsfiddle.net/ojkvdyfL/

.container{
    width:400px;
}
.subcontainer{
    display: inline;
}
button{
  display: inline;
  all:unset;
}
<div class="container">
    <p>1st example with buttons</p>
    <div class="subcontainer">
        <button> This is a short text in buttons </button>
        <button>with a longer text next to it because we need it so it takes mutliple lines to illustrate this issue</button>
    </div>
    <p>2nd example with spans</p>
    <div class="subcontainer">
        <span>This is a short text in spans </span>
        <span>with a longer text next to it becaufdsse we need it so it takes mutliple lines to illustrate this issue</span>
    </div>
</div>

我不明白为什么按钮示例不像SPAN示例那样工作.

内联规范说:"在正常流中,如果有空间,下一个元素将在同一行上."

你知道为什么它不起作用吗?是否存在css解决方案?或者我必须使用具有Role="Button"的跨度?

推荐答案

Button Layout表示,HTML5规范不允许以这种方式呈现按钮

...如果‘Display’的计算值是外部显示类型为‘inline’的值,则行为类似于‘inline-block’."

这样做是为了向后兼容按钮呈现委托给O/S函数的时代.

Html相关问答推荐

新用户登录时无法从cookie中获取当前用户信息

CSS复选框并排

防止SVG边框半径zoom

损坏的可点击html邮箱签名

需要帮助创建一个简单的html css网格布局

单独处理Button:Focus的多行按钮

带有图标和悬停过渡的CSS按钮

如何使div填充父项的剩余高度

视频重新加载而不是在 Swift 中暂停 WKWebView

jquery向单词中的一组字母添加跨度

我真的需要一个容器来让行和列正常工作吗? ( bootstrap 程序 v5)

在锥形渐变进度条内创建空白的问题

如何让一个 div 元素粘在另一个元素上?

在随机图像下对齐文本

Mediawiki css/html 信息框创建空白行

把标题、段落和图片放在一起

我如何让这个动画播放,然后停止,然后在设定的时间后再次播放? (CSS)

涉及短代码时如何在页面上定位元素?

根据百分比用多种 colored颜色 填充SVG路径

如何创建 宏?