Инвертированные свойства CSS для изменения на RTL
Чтобы изменить CSS веб-страницы на RTL от LTR, я должен установить или инвертировать следующие свойства CSS:
Тело {направление: РТЛ}
любой поплавок: слева должен быть поплавок: справа и наоборот
любые отступы или отступы слева или справа должны быть отменены
Кроме того, любые изображения должны быть инвертированы по горизонтали.
Мой вопрос: есть ли еще какие-либо свойства CSS, которые должны быть изменены?
4 ответа
Выравнивание текста, положение фона, положение границ, положение слева и справа, практически все, что имеет горизонтальное свойство. Если вы хотите сделать это вручную, вы можете просмотреть список свойств CSS, таких как этот, но лично я хотел бы взглянуть на использование одного из онлайн-инструментов, чтобы начать. CSSJanus, как правило, довольно хорош, хотя я уверен, что есть и другие, если вы его погуглите.
Удачи.
Вы просто пытаетесь писать справа налево или пытаетесь отразить веб-страницу?
body {
transform: scaleX(-1);
-ms-transform: scaleX(-1);
-moz-transform: scaleX(-1);
-webkit-transform: scaleX(-1);
-o-transform: scaleX(-1);
}
Это создаст зеркальное отображение веб-страницы, но все по-прежнему работает должным образом (например, ссылки можно нажимать на своих новых позициях)
Еще несколько свойств...
- box-shadow и text-shadow
/ * умножить первое значение (горизонтальное смещение тени) на -1 */
`box-shadow: 5px -5px 5px 5px #abc;`
становится
box-shadow: -5px -5px 5px 5px #abc;
а также
text-shadow: 2px 2px #FF0000;
становится
text-shadow: -2px 2px #FF0000;
2: радиус границы
Вы должны быть осторожны с этим, так как изменение значений для достижения RTL работает здесь по-другому
border-radius:25px 0px 0 25px;
becomes
border-radius:0 25px 25px 0; (not border-radius:25px 25px 0 0;)
Также вот пара советов:
- Горизонтальные позиции в процентах
Если у вас есть стиль, как:
.style
{
position: absolute;
top: 22%;
left: 32%;
...
}
левая собственность станет 100-32=68%
2. background-position: Horzontal Value в пикселях, например:
background-position: -34px -85px;
В таких случаях вам придется решить это вручную. (См. Эту статью)
Как ссылка:
Вот отличная статья о преобразовании веб-сайта в RTL
на самом деле весь сайт http://rtl-this.com/ занимается вопросами rtl, поэтому там можно найти много полезного
Вы можете попробовать;
body {
-ms-transform: scaleX(-1);
-moz-transform: scaleX(-1); /* Gecko */
-o-transform: scaleX(-1); /* Operah */
-webkit-transform: scaleX(-1); /* webkit */
transform: scaleX(-1); /* standard */
filter: FlipH; /* IE 6/7/8 */
}
Это создаст эффект зеркала. Вот живая демоверсия.
Вы можете попробовать rtl
если вы хотите передавать письма справа налево и можете использовать только text-align: right
если вы хотите плавать предметы вправо.
Если вы хотите, чтобы текст начинался справа, вы можете попробовать;
body{
unicode-bidi:bidi-override;
direction:rtl;
float: right;
}
Вот живая демонстрация;