如何在同一行中将文本左对齐,将文本右对齐?


102

如何在同一行中对齐文本,以使其中一些对齐到左侧?

<p>This text should be left-aligned. This text should be right aligned.</p> 

我可以将所有文本直接向内或通过使用样式表向左(或向右)对齐-

<p style='text-align: left'>This text should be left-aligned. 
    This text should be right aligned.</p>

如何将相应的文本在左右对齐,同时保持在同一行上?

Answers:


164

<p style="text-align:left;">
    This text is left aligned
    <span style="float:right;">
        This text is right aligned
    </span>
</p>

https://jsfiddle.net/gionaf/5z3ec48r/


1
text-align:left;它应该float:left;像<p> <span style =“ float:left;”>左文本</ span> <span style =“ float:right;”>右文本</ span> </ p>
Shylendra Madda

34

HTML:

<span class="right">Right aligned</span><span class="left">Left aligned</span>

CSS:

.right{
    float:right;
}

.left{
    float:left;
}

演示:http
//jsfiddle.net/W3Pxv/1


@mawg尽管可能是这样,但我更喜欢首选答案,因为它不需要CSS。
Menasheh '16

4
目前是“最高”还是“最高票数”?两者都可以更改,因此您不会帮助任何将来的追随者:-)无论如何,虽然我像您一样开始使用所有样式的线,但我很快意识到,将内容和呈现方式分开是有充分理由的。CSS是不可怕和有大量的免费教程周围-去了
Mawg说起用莫妮卡

18

如果您不想使用浮动元素,并且想要确保两个块都不重叠,请尝试:

<p style="text-align: left; width:49%; display: inline-block;">LEFT</p>
<p style="text-align: right; width:50%;  display: inline-block;">RIGHT</p>

这是唯一允许您使用不止两列的答案,这正是我所需要的。不过,它可能比OP关心的更精细。
克里斯汀·哈马克

9

HTML文件:

<div class='left'> Left Aligned </div> 
<div class='right'> Right Aligned </div>

CSS文件:

.left
{
  float: left;
}

.right
{
  float: right;
}

并且您完成了....


7
<h1> left <span> right </span></h1>

CSS:

h1{text-align:left; width:400px; text-decoration:underline;}
span{float:right; text-decoration:underline;}

7

尽管这里的几种解决方案都可以使用,但是没有一种解决方案能够很好地重叠,最终导致将一项移至另一项之下。如果您尝试布局将动态绑定的数据,则直到运行时您才知道它看起来很糟糕。

我想做的就是简单地创建一个单行表,然后在第二个单元格上应用正确的浮点数。无需在第一个上应用左对齐,默认情况下会发生这种情况。此处理通过自动换行完美重叠。

的HTML

<table style="width: 100%;">
  <tr><td>Left aligned stuff</td>
      <td class="alignRight">Right aligned stuff</td></tr>
</table>

的CSS

.alignRight {
  float: right;
}

https://jsfiddle.net/esoyke/7wddxks5/


这对我来说几乎是黄金,但是知道为什么使用CSS表格属性会使两个单元格在水平方向错开吗?jsfiddle.net/7wddxks5/7我似乎无法解决它。
addMitt

1
实际上,对我而言,由于我希望将正确的文本向右对齐,因此,如果我简单地将text-align:right设置为浮动并摆脱浮点数,这似乎就可以完美地工作。
addMitt

我也不知道为什么它会导致垂直移动。但是我能够通过垂直对齐对其进行修复。还将样式放到类中以清理HTML。jsfiddle.net/o10ogqkd
Eric Soyke '16

这是一个很好的解决方案。我认为这应该是一个可以接受的答案,因为它在使用表格标签时具有更多的创造力
Rotimi

3

在要向左或向右对齐的每个或一组单词上添加跨度。然后在跨度上添加ID或类,例如:

<h3>
<span id = "makeLeft"> Left Text</span>
<span id = "makeRight"> Right Text</span>
</h3>

CSS-

#makeLeft{
float: left;
}

#makeRight{
float: right;
}

2
根据html规范,您的示例应使用类而不是ID。
塞尔吉奥(Sergio)


-1

如果您只想更改文本的对齐方式,请创建一个类

.left {
text-align: left;
}

并在课文中覆盖该课程

<span class='left'>aligned left</span>

3
这是每行多重对齐问题的一半答案。
TimZaman 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.