Javascript код для определения арабского перевода и выбора арабской таблицы стилей - PullRequest
2 голосов
/ 23 января 2012

Я работаю над сайтом с картами стран, см. Здесь: http://defenddefenders.huritech.org/ Проблема в том, что у него есть опция перевода на арабский язык, и это при выборе серьезно искажает мой CSS, еще хуже, карту изображения. Прямо сейчас я ищу решение javascript, которое обнаружит, что при выборе варианта перевода на арабский язык он выбирает другую таблицу стилей, скажем, ar_style.css для отображения.

Я не слишком хорош с javascript, любая помощь? буду признателен, спасибо. Перевод выполняется с помощью плагина transposh.

Ответы [ 2 ]

2 голосов
/ 23 января 2012

На этой странице есть тег body:

<body class="home page page-id-1011 page-template page-template-template-magazine-php gecko two-col-left width-960 two-col-left-960">

Когда я переключаюсь на арабский, я получаю:

<body class="rtl home page page-id-1011 page-template page-template-template-magazine-php chrome two-col-left width-960 two-col-left-960">

Таким образом, у вас есть CSS, чтобы изменить этот материалуже.

Если вы укажете стиль, например:

body div { /* something */ }
body.rtl div { /* something else */ }

, тогда вы можете добавить переопределение в body.rtl div для арабских пользователей.Возможно, вы могли бы для элементов, которые выглядят неправильно, сделать:

body.rtl div#whatever {
    direction: ltr;
}

Таким образом, вы заставите его изменить направление.Правда, это лейкопластырь.Вы должны предоставить лучшие стили для ваших арабских пользователей.

0 голосов
/ 23 января 2012

Надеюсь, этот PHP-код поможет вам

<link rel="stylesheet" href="../css/main.css" type="text/css" />
<?php if($language->language == "he" || $language->language == "ar") : ?>
<link rel="stylesheet" href="../css/rtl.css" type="text/css" />
<?php endif; ?>

или вы можете посмотреть здесь

http://jasonrobb.com/v2/2009/09/03/how-to-flip-the-text-direction-layout-of-a-website-with-css/index.html

...