html - 彼此相邻的div的行为

标签 html css

我有一些 div 的行为不像我希望的那样。

<div class="list-product-with-border">
    <div style="width:80px; display:inline-block;">img</div>
    <div style="display:inline-block;"><b>Productname</b></div>
    <div style="float:right; width:80px;">
        <div>
            <button id="editBtn">Edit</button>
        </div>
        <div>
            <button id="removeBtn">Remove</button>
        </div>
    </div>
</div>

JSFiddle link

这里有两个问题:

  1. 带边框的 div 不够高:“删除”按钮在带边框的 div 中不可见
  2. 当“产品名称”为 longer 时,按钮呈现在带有产品名称的 div 下。发生这种情况时,我希望产品名称可以多行显示。三个 div 应始终相邻。

第一个和最后一个 div 有固定的宽度,中间的 div(产品名称)应该随着边框 div 的大小拉伸(stretch)

最佳答案

我个人会为此使用表格。表的每一行都是一个元素,并且有一列图像、一列名称和一列操作。这与用于发票的表格有什么不同吗?

我不能完全得到你想要的效果,但可以进行改进: float 元素应该出现在围绕它的元素之前 - 所以在这种情况下,它应该是list-product-with-border 容器中的第一件事。此外,您应该在容器的末尾有一个带有 clear:both 的元素,或者将容器设置为具有 overflow:hidden 以强制 float 元素位于内部.

关于html - 彼此相邻的div的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25606657/

相关文章:

Javascript:如何将 on() 方法与each() 一起使用?

css - border-top 线性渐变?

CSS:最后类型且仅当偶数

html - 无法将鼠标悬停在包装器 Div 上

PHP 隐藏/显示带分页的图像

css - Chrome 模拟器和 iphone 5 显示错误的媒体查询样式,但正在调整窗口大小

javascript - 使用 React JS 检测固定高度 div 的滚动结束

php - 为什么会出现错误? (SQL语法)

javascript - 获取插入符所在的单词?

css - 如何调整div的位置