html - 左上对齐按钮文本

标签 html css flexbox

如何在以下情况 (div2) 中使按钮文本位于左上方。

我必须使用按钮来满足某些要求,但让它看起来像一个普通的文本。任何帮助你帮助。

容器是 flexbox column 并且有一个 flex 1 的按钮。

我不想在按钮内添加一个元素并使其成为绝对位置。

需要更清洁的方式。

.container {
  display: flex;
  flex-flow: column;
  height: 200px;
  border: 1px solid gray;
}
.div1, .div3 {
  height: 40px;
}
.div2 {
  flex: 1;
  border: 1px solid red;
  text-align: left;
}
<div class="container">
   <div class="div1">
     div1
   </div>
   <button class="div2">
     I want this text to be top left
   </button>
   <div class="div3">
     div3
   </div>
</div>

最佳答案

左上对齐

使用属性 flex-direction: column; 将文本左上对齐。

.container {
  display: flex;
  flex-flow: column;
  height: 200px;
  border: 1px solid gray;
}
.div1, .div3 {
  height: 40px;
}
.div2 {
  flex: 1;
  border: 1px solid red;
  text-align: left;
  flex-direction:column;
}
<div class="container">
   <div class="div1">
     div1
   </div>
   <button class="div2">
     I want this text to be top left
   </button>
   <div class="div3">
     div3
   </div>
</div>

居中对齐

只需将您的样式 text-align:left 更改为 text-align:center

.container {
  display: flex;
  flex-flow: column;
  height: 200px;
  border: 1px solid gray;
}
.div1, .div3 {
  height: 40px;
}
.div2 {
  flex: 1;
  border: 1px solid red;
  text-align: center;  
}
<div class="container">
   <div class="div1">
     div1
   </div>
   <button class="div2">
     I want this text to be top left
   </button>
   <div class="div3">
     div3
   </div>
</div>

您可以根据需要进行组合并应用属性。

关于html - 左上对齐按钮文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49028282/

相关文章:

python - Django 提取值并使它们成为另一个页面中的占位符

css - 如何定位 CSS :last-of-type of consecutive elements (not ALL within a parent element)

css - 为什么 flexbox 不会增长到它的文本?

html - 为什么我的滚动条在屏幕外?如何解决? Flexbox,溢出-y : scroll

javascript - 使用 appendChild() 和 createElement() 创建 HTML DOM 元素时仅显示纯文本

html - 设置 bxSlider 幻灯片放映哪里出错了?

css - 文本缩进 - IE7

html - 如何在 flexitem 中顶部对齐 TEXTAREA 和 TEXT-input 控件?

jquery - 显示/隐藏事件行的内容

CSS header 未对齐。尝试使用 top -20px 菜单的其余部分不对齐来显示 Logo