将内联元素浮动到div的右侧

Raj*_*jat 10 css css-float

我想将内联元素右对齐到div的右侧.我已经看到在一个跨度上应用了float ="right"以对齐它但是对我来说似乎在语义上不正确,因为浮动应该将"框"或块元素移动到容器元素的右侧或左侧.

我对Float的理解是错误的还是在容器DIV中右对齐内联元素的另一种方法.

Dav*_*mas 6

float: right 完全可以应用于所有元素,块级或内联无论是在语义上还是根据规范(据我所知).

如果你想在没有使用的情况下对齐某些东西float那么就有可能margin-right: 90%;(假设你知道它与右边对齐的东西适合其他10%.

或者direction: rtl;但是这种情况从来没有像我认为的那样有效,而且它可能会使事情复杂化.

position: absolute; right: 0;会按你的需要做(但是它会从文档的流程中删除,并且它将被定位在其第一个具有已定义position: relative;(或至少已定义position)的父元素上.

您可能会使用text-align: right,但这似乎是一个简单的解决方案,我相信您已经尝试过了.

如果您可以提供用例,某些代码以及预期最终结果的指示,我们可能会为您提供更多帮助.


小智 5

浮动元素会自动将其放入框中.(参见:http://css.maxdesign.com.au/floatutorial/introduction.htm)但是,它在语义上没有任何不正确之处.语义并没有规定什么应该显示为一个块,什么应该显示为内联 - 这是我们可以任意声明的一个原因.(当你开始说出他们的命令时,它肯定会变得混乱 - 但我怀疑你在这里谈论的是什么,因为我无法想象你想要这样做让它保持内联的情况. )

此外,如果你需要将一些内联文本与普通文本流(这就是浮点数所做的那样)对齐,你真的想将它显示为一个块.如果它真的是一个内联元素,你需要的只是text-align:right- 你需要一个浮点数或在你上面声明的位置已经被视为一个块元素,所以声明它就没有错.