Microsoft Edge'in telefon numarası stilini kaldırın


96

Yeni Microsoft Edge tarayıcısının telefon numaralarını algıladığında stillerimi geçersiz kıldığını fark ettim:

<span class="phone">(123)123-1234</span>

Bu jsfiddle'a bakın (Microsoft Edge: P kullanılarak açılmalıdır).

Bu, web sitesinin tasarımına müdahale eder ve oldukça iğrençtir. Elbette, IE'nin halefinin bir özelliği gibi görünüyor: /

Web sitesi kullanıcılarımın görmemesi için bunu nasıl geçersiz kılabilir veya devre dışı bırakabilirim?


Ben bu değil umut aslında ... malware neden
Karns'ın

Eklentileri kontrol edin (Edge'e sahip değilsiniz), ancak bazı eklentiler bu davranışa IE-s'de neden oldu ...
2015'te 2

7
Bugün Twitter'da bunun hakkında yorum yaptım: mobile.twitter.com/scunliffe/status/631484565492625409 en azından şimdilik görebildiğim kadarıyla Microsoft bu kötü kararı tersine çevirene kadar <meta name="format-detection" content="telephone=no"/>kurtulmanız gereken her sayfaya eklemeniz gerekecek bunun. :-(
scunliffe

1
Ayrıca 145.1231321 gibi enlem / boylam numaralara uygulanan alır
behelit

1
Ayrıca vurgulanan sayı biçimleri, kullanıcının PC'sinin bölge ayarına ("Ev konumu") göre değişir, bu nedenle bu, tüm kullanıcıları farklı şekilde etkileyecektir! Bu, sayfalarınızı test ettiğinizde, son kullanıcılarınızın aynı tarayıcıyı kullanmalarına rağmen aslında farklı bir şey görebileceği anlamına gelir: docs.microsoft.com/en-us/previous-versions/windows/…
SharpC

Yanıtlar:


175

Sayfalarınızın başlığına bu meta etiketi ekleyerek kurtulabilirsiniz.

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

Microsoft'un bu etiketle ilgili belgeleri .

Umarım sayfaları şişkinleştirmeden bunu global olarak kapatmanın daha iyi bir yolu olacaktır ... Veya daha iyisi bu özelliği varsayılan olarak devre dışı bırakın.


İyi cevap! Bununla ilgili dokümanlara bir bağlantı ekleyebilir misiniz lütfen?
karns

9
Aptal tasarım. Birisi bunu yapmak isterse. En azından "algıla-telefonu = true" gibi bir özelliğe izin vererek onu isteğe bağlı hale getirebilirsiniz, çünkü bazen web uygulamanızın bunu yapmasına izin vermenize gerek yoktur, eğer
Miguel

59

Seçilen cevabın önerdiği gibi tüm bir sayfa için devre dışı bırakmak istemiyorsanız, aşağıdaki özniteliği belirli bir etikete ekleyebilirsiniz.

<p x-ms-format-detection="none">

Referans: https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/dev-guides/dn265018(v=vs.85)#controlling-phone-number-detection


9
Bunun biraz eski bir cevap olduğunu biliyorum, ancak bunu arayan herkes için: Bunu bir ana etikete eklemeliydim (etiketten bir adım ötede olan <div> veya telefonu görüntülemek için kullandığınız her şey gibi numara).
Dortimer

Hem yanıta hem de Debasertron'un yorumuna +1. Yoruma ek olarak, blok düzeyinde bir ebeveyn olması gerekiyor gibi görünüyor - işe yaramayan bir aralıkla denedim, ancak bir div iyiydi.
Masala

31

Yukarıdaki cevap mükemmel bir şekilde çalışıyor, ancak telefon numaralarını aramak için tıkla özelliğini devre dışı bırakır (bu, duyarlı bir site oluşturuyorsanız büyük bir sorundur). Telefon numarasını bir bağlantı haline getirmek için daha iyi bir çalışma buldum. Misal:

<a href="tel:888-888-8888">(888) 888-8888</a>

Bu, daha sonra "bağlantı" yı istediğiniz gibi biçimlendirmenize izin verir ve CSS'nizdeki "a" stilleri, telefon numarasındaki Edge ve iPhone stillerini geçersiz kılar. Bununla ilgili tek sorun, telefon numarasını tüm cihazlar için bir bağlantı haline getirmesidir, ancak bunun bir sorun olmadığını gördüm, çünkü hemen hemen her cihazda bir tür aramak için tıklayın özelliği veya uygulama dahil.


1
Gözlerimdeki en iyi yaklaşım!
conceptdeluxe

Soru "nasıl devre dışı bırakılır" olsa da, cep telefonu kullanımını göz önünde bulundurarak duyarlı bir site oluşturmaya çalışıyorsanız, bunun daha iyi bir yanıt olacağına katılıyorum.
JStevens

3

Bu sorunla karşılaştım, ancak biraz farklı bir kullanım örneğiyle: Vurguladığı numara bir telefon numarası değil, bu yüzden özel bir biçimlendirme istemiyorum.

Örneğin, aşağıdaki gibi bir şeye sahip olabilirsiniz:

<div>The current date/time: May 08 2017 10:44:58 GMT Daylight Time</div>

Benim için *, Edge 08 2017 10bir telefon numarası bağlantısına dönüşecek. Teşekkürler Edge!

Görünmez inline-blocköğeyi dizenin ortasına ekleyerek bunun üstesinden gelebileceğinizi buldum :

.notel{
  display:inline-block;
  height:0px;
  width:0px;
}
<span class="phone">(763)219-5222</span>
<div>The current date/time: May 08 2017 10:44:58 GMT Daylight Time</div>

<br>
<span class="phone">(763)2<span class="notel"></span>19-5222</span>
<div>The current date/time: May 08 2<span class="notel"></span>017 10:44:58 GMT Daylight Time</div>

Her iki durumda da vurgulamayı görmediğim için bunun telefon numaranız için işe yarayıp yaramadığını göremiyorum. Açıklığın konumunu dürtmeniz gerekebilir.

Bu arada, bunu yapabilmeniz gerçeği, komutları web sayfalarından terminalinize kopyalamamanız için birçok nedenden biridir:

span{
display:inline-block;
height: 0px;
width: 0px;
overflow:hidden;
}
textarea{
  width: 300px;
  height:50px;
}
<div>echo "HELLO" <span>&& wreck this machine</span></div><div>echo "WORLD"</div>

<textarea ></textarea>
<div>
Select, copy and paste above commands into the textarea.
</div>

* Edge'in sayıları vurgulamasının bölgesel olduğunu düşünüyorum. Jsfiddle'ınız benim için vurgulanmamış, ama ben Birleşik Krallık'tayım. İşte 0 ile başlayan sayıları vurguluyor gibi görünüyor.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.