作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图避免 float (或寻找替代方法)将toolbar div
移动到页面右侧,同时保持其size 其内容的大小。
所以,如果我简单地添加:
float:right;
到下面的 .toolbar
我会得到我想要的东西,它基本上是一个占据其元素大小的容器(来自 display:inline-flex
) 与页面右侧对齐。
但是,我不想将它 float
到右边(它有效,但我听说你应该避免它,我正在寻找 float 的替代方法)。
我确实尝试过使用 margin-left: auto;
但无法弄清楚(除非我取消了我需要的 flex:inline-flex
父尺寸。
有什么想法吗?
.page {
padding: 20px;
}
.toolbar {
background: lightgray;
border: 1px solid black;
padding: 5px;
display: inline-flex;
flex-direction: row;
justify-content: flex-end;
}
.item {
background: azure;
border: 1px solid black;
padding: 3px;
margin: 3px;
}
.switchbox {
display: inline-block;
}
<div class="page">
<div class="toolbar">
<div class="item switchbox">Switchbox Component</div>
<button class="item button">Submit</button>
</div>
</div>
最佳答案
您可以使用 flex 属性沿水平或垂直轴对齐元素。
要启用 flex 属性,只需将父容器设为 flex 容器即可。
将此添加到您的代码中:
.page {
display: flex;
justify-content: flex-end;
}
.page {
display: flex;
justify-content: flex-end;
padding: 20px;
}
.toolbar {
background: lightgray;
border: 1px solid black;
padding: 5px;
display: inline-flex;
flex-direction: row;
justify-content: flex-end;
}
.item {
background: azure;
border: 1px solid black;
padding: 3px;
margin: 3px;
}
.switchbox {
display: inline-block;
}
<div class="page">
<div class="toolbar">
<div class="item switchbox">Switchbox Component</div>
<button class="item button">Submit</button>
</div>
</div>
或者你可以这样做:
.page {
display: flex;
}
.toolbar {
margin-left: auto;
}
.page {
display: flex;
padding: 20px;
}
.toolbar {
margin-left: auto;
background: lightgray;
border: 1px solid black;
padding: 5px;
display: inline-flex;
flex-direction: row;
justify-content: flex-end;
}
.item {
background: azure;
border: 1px solid black;
padding: 3px;
margin: 3px;
}
.switchbox {
display: inline-block;
}
<div class="page">
<div class="toolbar">
<div class="item switchbox">Switchbox Component</div>
<button class="item button">Submit</button>
</div>
</div>
关于html - 如何在不使用 float 的情况下向右浮动 inline-flex 的 div?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55031000/
我是一名优秀的程序员,十分优秀!