Мобильный HTML-рендеринг номеров - PullRequest
8 голосов
/ 15 сентября 2010

У меня есть мобильная веб-страница с банковской выпиской. Примерно так:

DATE          | DESCRIPTION              | AMOUNT
--------------|--------------------------|---------------
Jan 2nd 2010  | Clothes                  |  USD 1.839.000
Sep 23rd 2010 | Drinks                   |  USD 2.837.000

Я использую . в качестве разделителя тысяч, поскольку это наша языковая конфигурация для этого.

HTML очень прост. Примерно так:

<table>
   <tr>
      <td>DATE</td>
      <td>Clothes</td>
      <td>AMOUNT</td>
   </tr>
   <tr>
      <td>Jan 2nd 2010</td>
      <td>Clothes</td>
      <td>USD 1.839.000</td>
   </tr>
   <tr>
      <td>Sep 23rd 2010</td>
      <td>Drinks</td>
      <td>USD 2.837.000</td>
   </tr>
</table>

Проблема, с которой я столкнулся, заключается в том, что iPhone Safari, Android-браузеры и некоторые браузеры Nokia считают (ошибочно) номера, такие как 1.839.000 и 2.837.000, номера телефонов , следовательно отображать их как ссылки для телефонных звонков или текстовых сообщений.

Мой вопрос: существует ли специальный TAG / ATTRIBUTE / CSSSTYLE, чтобы мобильный браузер отображал такой текст как обычный текст ?

Большое спасибо.

Ответы [ 5 ]

25 голосов
/ 15 сентября 2010

Я не знаю об Android или Nokia, но для iPhone вы можете использовать метатег :

<meta name="format-detection" content="telephone=no">

чтобы отключить обнаружение чего-либо как номера телефона.

4 голосов
/ 19 декабря 2013

Если вы хотите сохранить функциональность, которая распознает номер телефона как таковой и позволяет вам использовать его, используйте это решение:

Поскольку iOS добавляет тег <a href="tel123456789"> к числу, все, что вам нужно сделать, это создать правило css, которое стилизует этот тег:

a[href^=tel] { color: inherit; }

кредит переходит к этой статье Razor Edge Labs .

4 голосов
/ 15 сентября 2010

Вот как вы это делаете для iPhone , который , похоже, работает для Android; он может работать в других браузерах, вот и все, с чем я должен сейчас тестировать:

<meta name="format-detection" content="telephone=no" />
0 голосов
/ 15 сентября 2010

Как обсуждалось в комментариях, добавление произвольных диапазонов, кажется, нарушает обнаружение для рассматриваемого браузера:

<span>2</span>.837<span>.000</span>

однако, явное решение в форме атрибута "не анализировать это" илиКонечно, метатег будет предпочтительнее, так как он будет более надежным в будущем и для всех / большинства платформ.

0 голосов
/ 15 сентября 2010

Longshot, но попробуйте записать точку как &#46; - существуют интеллектуальные коды, которые могут отключить эту функцию для мобильного сафари и т. Д., Но это работает только для одного-двух устройств. Если вам повезет, вы обойдете их регулярное выражение.

...