HTML文档中的链接通常是可点击的。但是,在打印页面上,该功能是由于无法获得的自然原因。
<a href="#foo">Link to foo</a>
[... loads of content ...]
<a name="foo"/>Here is foo
点击屏幕上的“链接到foo”会将页面滚动到正确的位置。如果打印此文档,是否有办法引用页码?我想这样做
<a href="#foo" style="printing: page-reference;">Link to foo</a>
使其打印页码而不是带下划线的文本“Link to foo”。
这是可能的,使用HTML 4或5,XHTML,CSS 2或3,还是借助一些花哨的javascript?
答案 0 :(得分:5)
CSS允许您为不同的媒体类型指定不同的样式表 - 即屏幕和打印页面,还有音频,盲文等,以及不同的屏幕/页面大小和分辨率,这使得它非常强大,可以将内容提供给移动设备设备
要指定仅适用于打印的样式表,请使用@media print
。有fairly good write-up on it at W3Schools。
在您的情况下,您可以将打印介质样式与:before
或:after
一起使用,只有在打印时才能向特定元素添加其他文字。
这样的事情可以帮到你:
@media print {
a[href='#foo'] { text-decoration:none;}
a[href='#foo']:after { content: "[Ref: 1]";}
a[name='foo']:before { content: "[1]";}
}
显然,您可以将内容中的文字更改为您喜欢的内容;我试图让它接近你所要求的。
现有内容仍会显示(虽然我已经删除了下划线)。
希望有所帮助。
答案 1 :(得分:0)
我发现做我想做的事是不可能的。如果我错了,请纠正我!