2010-09-14 26 views
8

Mam mobilną stronę internetową z wyciągiem z rachunku bankowego. Coś takiego:Mobilne numery renderingu HTML

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

Używam . jako separatora tysięcy, ponieważ to nasza konfiguracja locale za to.

HTML jest bardzo prosty. Coś takiego:

<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> 

Problem mam jest to, że iPhone Safari, przeglądarki Android i niektóre Nokia Przeglądarki są myślenia (błędnie) Numery takie jak 1.839.000 i 2.837.000numery telefonów stąd czyniąc je jako linki wykonywać połączenia telefoniczne lub robić SMS-y.

Moje pytanie: czy istnieje specjalna TAG/ATTRIBUTE/CSSSTYLE, aby poinformować przeglądarkę mobilną, aby pokazać ten tekst jako zwykły tekst?

Wielkie dzięki.

+1

Interesujące pytanie. Czy dodawanie tagów span pomiędzy pomoc: '. 837 .000' –

+0

@Pekka: pozwól mi spróbować. Dzięki! –

+0

@Pekka: pomogło! –

Odpowiedz

24

nie wiem o Android lub Nokia, ale dla iPhone można używać meta tag:

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

wyłączyć wykrywanie coś jak numer telefonu.

+0

Niewiarygodne, wreszcie coś, co NIE jest ignorowane przez Opera Mobile Classic !! To naprawdę działało, jestem tak wzruszony, że mam zamiar płakać: P – andreszs

+0

Aby zachować kliknięcie2, ale usunąć niebieski efekt podkreślenia: a [href^= tel] { kolor: dziedzicz; tekst dekoracji: brak; } –

0

Longshot, ale spróbuj wpisać okres jako &#46; - istnieją inteligentne kody, które można wyłączyć dla mobilnego safari itp., Ale działa to tylko dla dwóch urządzeń. Jeśli masz szczęście, ominiesz ich wyrażenie regularne.

+0

Tak, to (nie mam głosów na dziś) lub może jakiś dziwny charakter unicode, który wygląda jak "." W ostateczności –

3

Oto jak to zrobić for the iPhone, który seems to work również dla Androida; może działać w innych przeglądarkach, to wszystko, co mam do testowania ze w tej chwili:

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

Jak wspomniano w komentarzach, dodawanie dowolnych rozpiętości wydaje się złamać detekcję dla przeglądarki w pytaniu:

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

jednak jednoznaczne rozwiązanie w postaci atrybutu "nie parsuj tego" lub metatagu byłoby oczywiście lepsze, ponieważ byłoby bardziej pewne, że będzie działać w przyszłości i na wszystkich/większości platform.

4

W przypadku, gdy chcesz zachować funkcjonalność, która rozpoznaje numer telefonu jako takie i pozwala, by go dotknąć, użyj tego rozwiązania:

Od iOS dodaje <a href="tel123456789"> tag wokół numeru, wszystko co musisz zrobić, to uczynić regułę cSS style ten tag:

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

zasługa this Razor Edge Labs article.