css - 两列布局中的垂直对齐按钮

标签 css layout styles vertical-alignment

我正在尝试获得两列布局,其中左列有一个按钮(垂直居中),右列只是文本。

我已经能够让两列布局正常工作,但我无法让按钮居中(最大的文本是动态的。它可以增长和缩小,所以左列需要是 height: 100%)。

这就是我到目前为止想出的:

<body>
<div>
<div style="float: left; width: 10px; height: 100%; vertical-align: middle; display: table-cell;">
    <button type="button" style="display: block; vertical-align: middle;">Abc</button>
</div>
<div style="margin-left: 50px;">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris nulla magna, auctor a varius quis, convallis id est. Vestibulum rhoncus, diam ac malesuada commodo, ipsum justo blandit nulla, eu pretium felis metus vel erat. Donec lobortis arcu ac mauris aliquam ultrices. Nunc feugiat, nisl non pharetra tempus, nunc est cursus nibh, quis hendrerit nibh mauris et massa. Nunc justo quam, feugiat ac mattis ac, placerat sed sem. Sed ultrices orci at erat sodales malesuada. Aenean blandit blandit tellus sit amet imperdiet. Duis pellentesque augue quis lacus cursus at convallis dolor volutpat. Donec orci quam, rhoncus in tincidunt ornare, fringilla eget magna.

Nulla facilisi. Cras consectetur turpis id odio mattis sagittis. Aenean bibendum, ligula tempor luctus fringilla, magna neque malesuada ipsum, non tincidunt ipsum libero non ante. Mauris posuere ullamcorper lorem, et vulputate nibh mattis a. Mauris pretium ullamcorper convallis. Mauris quam est, sollicitudin ut pretium eu, mollis ut elit. Nulla vulputate sodales sagittis.

Suspendisse a porta orci. Sed velit purus, auctor quis tincidunt sed, tristique sed libero. Sed et est eget neque mattis lobortis. Mauris suscipit vestibulum gravida. Etiam lorem ligula, viverra eu iaculis vel, varius at libero. Nullam ante ligula, porta vel euismod ac, gravida ac massa. Pellentesque semper eros vitae sapien aliquam laoreet quis ut neque. Phasellus ac ullamcorper nibh. Praesent vitae tellus libero. Sed aliquet consectetur tempor. Nam porta ornare quam, sed viverra arcu congue eget. Nulla pharetra mi ac enim convallis vel mollis nunc iaculis.

Aenean cursus sodales nunc eu euismod. Mauris eget justo est, eget varius libero. Integer pretium ultricies tortor, ut pellentesque dolor bibendum sed. Praesent ullamcorper, est facilisis molestie ultricies, erat metus tristique enim, nec luctus quam felis et lacus. Donec ullamcorper nulla ac purus consequat aliquet. Praesent nec arcu eu orci feugiat ullamcorper sit amet ac augue. Nullam porta adipiscing felis, vel suscipit tortor bibendum vel. Cras tincidunt erat quis mi ornare ultricies.

Maecenas non ante elit, vel ullamcorper sem. Donec a lectus sit amet lectus lacinia fermentum. Quisque at feugiat lorem. Donec in ipsum lectus, in aliquet enim. Duis purus nisi, tempor vehicula faucibus eu, dapibus id nisl. Phasellus dignissim sodales ornare. Fusce vel libero non ipsum sagittis convallis. In hac habitasse platea dictumst. Fusce ultrices, lectus nec eleifend porttitor, risus sem tincidunt elit, eu hendrerit nibh tortor a dolor.</div>
</div>
</body>

据我所知应该可以,但似乎没有。关于如何让它发挥作用有什么建议吗?

最佳答案

我想出了一个解决方案,将您的内容放入 div 并使用 position: relative 并制作 button position: absolutetop: 50%。那是你想要达到的目标吗?
FIDDLE EXAMPLE

关于css - 两列布局中的垂直对齐按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15840253/

相关文章:

javascript - 在悬停状态下突出显示多个元素

css - 如何在 React Native Project 中的图像之间留出空间?

math - 如何使用 CSS3 围绕 X=0、Y=0 和 Z=0 以外的线旋转元素?

android - "No resource found"使用<include layout="">时

c# - 绑定(bind) IsEnabled 不起作用

html - 使用 uk-close 按钮​​隐藏/关闭容器

flutter - 如何布局彼此相邻但重叠的小部件

html - 为什么向左浮动不起作用

iphone - 如何在 Xcode 中以编程方式更改 UITableViewController 的样式

reactjs - Material-UI 主题覆盖问题