Как поворачивать отдельные буквы и удерживать их влево-вправо?
Я пытаюсь получить строку с каждой отдельной буквой, повернутой на 90 градусов; однако я хочу сохранить "поток" букв, идущих слева направо, а не вертикально. Я также хочу сохранить эту "зачеркнутую" горизонтальную зеленую линию (см. Изображения ниже).
Какой самый простой способ сделать это? Я предпочитаю использовать JavaScript и/или CSS.
С стилем -transform: rotate
CSS я получаю следующее:
![do not want]()
<style type="text/css">
.rotate {
-webkit-transform: rotate(-90deg);
}
</style>
<body>
<div class="rotate">
<span style="color:#0C0; text-decoration:line-through;">
<span style="color:#000;">
A B C
</span></span></div>
Что бы я хотел получить, это что-то вроде этого, не прибегая к специальному шрифту.
![enter image description here]()
Ответы
Ответ 1
Чистый CSS:
<div class="letters">
<span>A</span><span>B</span><span>C</span>
</div>
.letters {
height:8px;
line-height:16px;
border-bottom:1px solid green;
position:relative;
}
.letters > span {
float:left;
-webkit-transform: rotate(-90deg);
}
Демо
Ответ 2
Вот некоторые js, которые должны сделать трюк: http://jsfiddle.net/AYGDR/8/
$(function() {
$(".target").html(("<span>" + $(".target").html().split(" ").join("</span><span>") + "</span>"));
var rotate = 0;
$(".target span").each(function() {
rotate = rotate - 90
$(this).css({
"-webkit-transform": "rotate(" + rotate + "deg)",
"display": "inline-block"
});
});
});
И я случайно бросил несколько бонусных поворотов, так как я думал, что это часть вопроса.
Ответ 3
мой CSS:
<style>
span[class^="rot"]:not([char]):before{
content: '\27b7'; }
span[class^="rot"][char]:before{content: attr(char);}
span[class^="rot"] { position: relative; }
span[class^="rot"]:before {
position: relative; display: inline-block;
font-weight: bold; font-size: 16px; line-height:16px;
font-family: Tahoma, Verdana, sans-serif;
margin:0;padding:0;
width:16px;height:16px;
}
.rot-90:before { transform: rotate(-90deg); }
.rot90:before { transform: rotate(90deg); }
.rot45:before { transform: rotate(45deg); }
.rot-45:before { transform: rotate(-45deg); }
.rot180:before { transform: rotate(180deg); }
</style>
<p>
A long time <span class=rot90 style="color: green"></span> ago in a
<span class=rot-45 char="G"></span>alax<span class=rot180 char="y"></span>
<span class=rot-90 char="F"></span>ar far
a<span class=rot45 char="w"></span>way
![result]()
Ответ 4
Это работает в последней версии chrome
<span style="color:#000; display: inline-block; max-width: 10px;">
A B C
</span>
написал только самый внутренний диапазон, хотя