0lorin
@0lorin
программист

Как быть с инпутами в rtl версии сайта?

Алгоритм bidi решает, как выводить символы — слева-направо, или наоборот, причём делает это не всегда без проблем.


Предположим есть сайт с поддержкой мультиязычности, в том числе rtl-языков. И есть на этом сайте input для ввода телефона в свободном формате.


Если вводить цифры подряд, или через дефис, то проблем нет, но вот реакция на пробелы у меня вызывает вопросы.

Набросал пример. Цифры во всех случаях одинаковые, но введены с разными разделителями — попробуйте добавить куда-нибудь пробел.


Вопрос к опытным в таких делах людям: надо ли с этим что-то делать, или проблема высосана из пальца и всех всё устраивает?
  • Вопрос задан
  • 4208 просмотров
Решения вопроса 1
@T2L
Прочёл вашу статью, придумал решение:

<input type="text" value="123456" dir="ltr" style="text-align: right" />


Такой себе обман :)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
yogev_ezra
@yogev_ezra
Живу в Израиле. Язык иврит — RTL. Проверил сейчас, ради интереса. Каждый сайт изворачивается, как может (заранее прошу прощения за много картинок + часть больших картинок поместил под спойлер):

www.orange.co.il/ — сайт сотового оператора — там в качестве логина нужно ввести свой номер телефона. Они позволяют и дефисы, и пробелы, и всё выглядит всегда правильно. Опа — этот «login box» внезапно написан на Adobe Flash :-)


www.cellcom.co.il/ — сайт сотового оператора №2 — ВНЕЗАПНО та же проблема, что и у Вас (это учитывая то, что в Израиле 2 государственных языка — иврит и арабский — оба RTL)


www.pelephone.co.il/ — сайт сотового оператора №3 — веб-форма моментально стирает любые вводимые символы, кроме цифр.
Скрытый текст


www.hotmobile.co.il — сотовый оператор №4 — разделяет префикс (код оператора) и собственно номер телефона на 2 разных поля:
Скрытый текст


www.golantelecom.co.il/ — сотовый оператор №5 — как и №4, разделяет на префикс и номер
Скрытый текст


www.bezeq.co.il/ — стационарный (не-сотовый) телефонный оператор — проблема, как у сотового оператора №2

==============================================================================

В общем — если Вы и заказчик, и исполнитель — я бы лучше сделал отдельным полем префикс, так понятней всего и будет работать всегда. А если Вы — только исполнитель, то покажите заказчику мои 6 примеров, и пусть он сам решит :-) Стандарта нет даже в стране с государственным RTL-языком, как видите.

Надеюсь, чем-то помог Вам.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы