В Firefox при печати страницы с тегами привязки местоположение ссылки печатается после текста

Например,

<a href="../somepage/page.aspx?qs=asdf">Text Here</a>

распечатает как...


Текст здесь (../somepage/page.aspx? Qs=asdf)


В IE это выглядит нормально (не печатает URL). Любые идеи, почему это действует таким образом?

7 ответов

Решение

Ответ был в рамках CSS, который мы используем (Blueprint). В файле стиля была следующая строка:

a:link:after,a:visited:after{content:"(" attr(href) ")";font-size:90%}

Думаю, это может помочь другим, кто использует Blueprint.

Экстраполируя ответ Бретта на Firefox 25, этот стиль CSS удаляет некорректную ссылку:

@media print {
    a:link:after,
    a:visited:after {
        content: "" !important;
    }
}

Кроме того, если вы используете Twitter Bootstrap в качестве основы, это:

a[href]:after{
    content:"";
}

... сделает свое дело! (по крайней мере, в начальной загрузке 3)

Если вы хотите быть более конкретным - скажем, удалить ссылки в таблице, то вы можете сделать следующее с помощью jQuery.

$(".tableclass tr td a").removeAttr("href");

Просто добавьте это на страницу макета (мастер-страница)

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

Существует также семантическая причина печатать URL рядом со ссылкой. Представьте, что вы печатаете документ без URL. Вы не можете быть уверены, что полностью понимаете текст в том виде, в каком он подразумевается автором.

Это может быть необходимо для цитаты, чтобы напечатать источник. Это важно, например, для академических текстов.

Действительно, Бретц ответ правильный.

Вы можете полностью избежать этой проблемы на экране, включив атрибут media в ссылку стиля печати следующим образом

<link href="../../Content/blueprint/print.css" rel="stylesheet" media="print" type="text/css" />
Другие вопросы по тегам