垂直文本方向

Moo*_*oon 95 html css text vertical-alignment

我一直在试着像垂直方向那样在文字表格中进行,但到目前为止我只能做到这一点 ......我不满意因为它是一个旋转的盒子...... Isn'有没有办法让实际的垂直方向文字?

我只在演示中将旋转设置为305度,这不会使文本垂直.270deg但我只是制作演示以显示旋转.

swa*_*wan 99

替代方法:http://www.thecssninja.com/css/real-text-rotation-with-css

p { writing-mode: tb-rl; }
Run Code Online (Sandbox Code Playgroud)

  • @CrystalMiller和BTW,w3schools可以是一个好帮手,但它不是源/原始文档(所以它可能会遗漏一些东西),"官方"是w3.org,或者最接近,更人性化的东西是mozilla的开发者网络 - "MDN" - https://developer.mozilla.org/ (6认同)
  • 它似乎适用于当前的浏览器 - http://caniuse.com/#search=writing-mode (5认同)
  • `tb-rl`已被弃用,请改用`vertical-rl`. (5认同)
  • 遗憾的是,如果垂直文本位于屏幕左侧,则大多数罗马文本​​是从下到上阅读的。如果文本位于屏幕右侧,则从上到下。弃用了一些值,我们最终得到了屏幕右侧从上到下的唯一vertical-rl。对于左侧,我们必须添加一个变换:rotate(180deg); (4认同)
  • 我能够找到这个:http://generatedcontent.org/post/45384206019/writing-modes.虽然感觉太乱了. (2认同)

Ami*_*mit 80

-webkit-transform: rotate(90deg);
Run Code Online (Sandbox Code Playgroud)

其他答案是正确的,但它们导致了一些对齐问题.尝试不同的东西时,这个CSS片段代码对我来说非常合适.

.vertical{
    writing-mode:tb-rl;
    -webkit-transform:rotate(90deg);
    -moz-transform:rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform:rotate(90deg);
    transform: rotate(90deg);
    white-space:nowrap;
    display:block;
    bottom:0;
    width:20px;
    height:20px;
}
Run Code Online (Sandbox Code Playgroud)

  • 没有'position'属性,属性'bottom'没有价值. (7认同)
  • 我需要添加-ms-transform:rotate(90deg); 在IE11中使用它 (2认同)

Moh*_*jib 61

我正在搜索实际的垂直文本而不是HTML中的旋转文本,如下所示.所以我可以通过使用以下方法来实现它.

在此输入图像描述 HTML: -

<p class="vericaltext">
Hi This is Vertical Text!
</p>
Run Code Online (Sandbox Code Playgroud)

CSS: -

.vericaltext{
    width:1px;
    word-wrap: break-word;
    font-family: monospace; /* this is just for good looks */
}
Run Code Online (Sandbox Code Playgroud)

的jsfiddle!演示.

更新: -如果您需要显示空格,请将以下属性添加到您的CSS.

white-space: pre;

所以,css类应该是

.vericaltext{
    width:1px;
    word-wrap: break-word;
    font-family: monospace; /* this is just for good looks */
    white-space: pre;/* this is for displaying whitespaces */
}
Run Code Online (Sandbox Code Playgroud)

的jsfiddle!用空白演示

更新2(28-JUN-2015)

由于 white-space: pre;在Firefox上似乎不起作用(针对此特定用途)(截至目前),只需将该行更改为

white-space: pre-wrap;

所以,css类应该是

.vericaltext{
    width:1px;
    word-wrap: break-word;
    font-family: monospace; /* this is just for good looks */
    white-space:pre-wrap; /* this is for displaying whitespaces including Moz-FF.*/
}
Run Code Online (Sandbox Code Playgroud)

JsFiddle演示FF兼容.


Jbr*_*own 26

要将文字旋转90度:

-webkit-transform: rotate(90deg);   
-moz-transform: rotate(90deg);
-ms-transform: rotate(90deg);
-o-transform: rotate(90deg);
transform: rotate(90deg);
Run Code Online (Sandbox Code Playgroud)

此外,如果未设置为display:block,则无法旋转span标记.

  • <span>可能需要与display:block; 正确旋转 (4认同)
  • 我将它应用于位于<td>内的<div>.它似乎在所有浏览器中成功旋转.......但是,一旦div旋转(90度),td就不会扩展它的高度. (2认同)

Igg*_*ggy 10

对于在firefox中使用下面另一个字符的垂直文本:

text-orientation: upright;
writing-mode: vertical-rl;
Run Code Online (Sandbox Code Playgroud)


Abd*_*sha 9

要垂直(自下而上)显示文本,我们可以简单地使用:

writing-mode: vertical-lr; 

transform: rotate(180deg);
Run Code Online (Sandbox Code Playgroud)

writing-mode: vertical-lr; 

transform: rotate(180deg);
Run Code Online (Sandbox Code Playgroud)
#myDiv{
text-align: center;
}

#mySpan{
writing-mode: vertical-lr; 
transform: rotate(180deg);
}
Run Code Online (Sandbox Code Playgroud)

请注意,我们可以添加它以确保浏览器兼容性:

-webkit-transform: rotate(180deg);   
-moz-transform: rotate(180deg);
-ms-transform: rotate(180deg);
-o-transform: rotate(180deg);
transform: rotate(180deg);
Run Code Online (Sandbox Code Playgroud)

我们还可以writing-modeMozilla 文档上阅读更多关于财产的信息


Mla*_*vic 7

尝试使用:

writing-mode: lr-tb;
Run Code Online (Sandbox Code Playgroud)


小智 6

#myDiv{
text-align: center;
}

#mySpan{
writing-mode: vertical-lr; 
transform: rotate(180deg);
}
Run Code Online (Sandbox Code Playgroud)
<div id="myDiv"> 

<span id="mySpan"> Here We gooooo !!! </span>

</div>
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述