Chrome'da yazdırırken href değerlerini kaldırmanız gerekiyor


290

Yazdırma CSS'sini özelleştirmeye çalışıyorum ve bağlantıyı hem hrefdeğer hem de bağlantılarla yazdırdığını buluyorum .

Bu Chrome'da.

Bu HTML için:

<a href="http://www.google.com">Google</a>

Yazdırır:

Google (http://www.google.com)

Ve yazdırmasını istiyorum:

Google

1
Unutmayın, NEDEN her büyük CSS çerçevesi bunu yapar - kağıda tıklayamazsınız! Devre dışı bırakacaksanız
Julix

1
Bu doğru, ancak bence bağlantının ne zaman ve nerede görüneceğini kontrol etmek daha iyi. Örneğin, bağlantılarımda, metinden sonraki satırda ve parantez olmadan görünmelerini istiyorum. Bu yüzden metinde sadece url'yi gösterdim.
user4052054

Yanıtlar:


602

Bootstrap aynı şeyi yapar (... aşağıda seçilen cevapla).

@media print {
  a[href]:after {
    content: " (" attr(href) ")";
  }
}

Sadece buradan kaldırın veya kendi yazdırma stil sayfanızda geçersiz kılın:

@media print {
  a[href]:after {
    content: none !important;
  }
}

17
<style>@media print{a[href]:after{content:none}}</style>Çoğunlukla kendimi bu sayfaya geri döndüğümde gönderiyorum, teşekkür ederim
William Entriken

1
Görünüşe göre Vakıf da bu işi yapıyor.
spasticninja

Görünüşe göre HTML5 Boilerplate de bunu yapıyor! Bu yüzden kendi web sitemdeki kod değişikliği ve diğer web sitelerindeki Müfettiş aracılığıyla geçersiz kılmak zorundayım ...
ADTC

Uyarı: Bir tablonun yazdırma sırasında bazen son birkaç satırı kaybetmesi ile ilgili sorunlar yaşadık. Bu kuralın suçlu olduğu ortaya çıktı ya da en azından onu kaldırmak sorunu çözdü. Neden böyle bir etkisi olduğunu bilmiyorum.
Henrik N

1
@HenrikN - Ben bunun kayan bootstrap sütunları ile ilgili olduğunu düşünüyorum. kullanarak float:nonegerektiğinde bana geri birkaç hafta için benzer bir sorunu sabit; size yardımcı olabilir, ancak bu farklı bir konudur
Andrew

40

Öyle değil . Baskı stil sayfanızdaki bir yerde, bu kod bölümüne sahip olmanız gerekir:

a[href]::after {
    content: " (" attr(href) ")"
}

Diğer tek olasılık sizin için bir uzantınız olması.


1
Ben zurb vakıf css aldım.
forX


10

Aşağıdaki CSS'yi kullanıyorsanız

<link href="~/Content/common/bootstrap.css" rel="stylesheet" type="text/css"    />
<link href="~/Content/common/bootstrap.min.css" rel="stylesheet" type="text/css" />
<link href="~/Content/common/site.css" rel="stylesheet" type="text/css" />

media = "screen" ekleyerek aşağıdaki stilde değiştirin

<link href="~/Content/common/bootstrap.css" rel="stylesheet" **media="screen"** type="text/css" />
<link href="~/Content/common/bootstrap.min.css" rel="stylesheet" **media="screen"** type="text/css" />
<link href="~/Content/common/site.css" rel="stylesheet" **media="screen"** type="text/css" />

Bence işe yarayacak.

eski cevaplar şöyle

    @media print {
  a[href]:after {
    content: none !important;
  }
}

krom göz atmada iyi çalışmadı.


4

Ben sadece çapa iç içe bir img ile benzer bir sorunla karşılaştı:

<a href="some/link">
   <img src="some/src">
</a>

Başvurduğumda

@media print {
   a[href]:after {
      content: none !important;
   }
}

Herhangi bir nedenden dolayı img ve tüm çapa genişliğini kaybettim, bunun yerine kullandım:

@media print {
   a[href]:after {
      visibility: hidden;
   }
}

hangi mükemmel çalıştı.

Bonus ipucu : baskı önizlemesini inceleyin


1

Sayfa URL'sini gizlemek için.

media="print"stil tage örneğinde kullanın :

<style type="text/css" media="print">
            @page {
                size: auto;   /* auto is the initial value */
                margin: 0;  /* this affects the margin in the printer settings */
            }
            @page { size: portrait; }
</style>

Bağlantıları kaldırmak istiyorsanız:

@media print {
   a[href]:after {
      visibility: hidden !important;
   }
}

-2

Normal kullanıcılar için. Geçerli sayfanın inceleme penceresini açın. Ve şunu yazın:

l = document.getElementsByTagName("a");
for (var i =0; i<l.length; i++) {
    l[i].href = "";
}

Ardından, baskı önizlemesinde URL bağlantılarını göremezsiniz.


Yazdırmaya çalıştığınız sayfanın kaynak kodu üzerinde kontrolünüz yoksa bu iyi bir çözümdür.
Paddymac
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.