打印到PDF时如何使链接无法点击

时间:2017-02-23 09:38:11

标签: html css

我有一个带有桌子的网页。如果用户登录,他们可以单击行标题进入编辑页面。要使登录和未登录用户的打印版本看起来相同,我使用CSS将链接设置为常规文本样式。

问题是,Chrome中的“另存为PDF”功能会保存链接及其href,如果在保存的pdf中单击,则会打开网页。有没有办法,在这个“打印”期间删除这个href,除了明显的方式有两个元素,只显示@media not print中的可点击的一个,并且只显示{{1}中的不可点击的一个}}

我不希望在打印过程中使用JavaScript来更改href。

3 个答案:

答案 0 :(得分:2)

您可以使用@media print { a { pointer-events: none; color: #000; text-decoration: none; } } ,在此处查看该http://caniuse.com/#search=pointer-events的浏览器兼容性。它会禁用您的链接。

[routerLink]="['/Questions', {queryParams: {id:1234, pageid:0}} ]"

答案 1 :(得分:0)

像这样使用删除锚标记并放入div ...就像

 <style>
   #d:active {
    load-url: (http://google.com/
}
    </style>
    <div class="click" id="d" >

    </div>

答案 2 :(得分:0)

您可以使用onclick属性打开编辑页面:

public class MyClass {

    public static T deserializeFromTemplate<T>(this T obj, string filename)
    {
        using (FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.Read))
        {
            using (XmlDictionaryReader reader = XmlDictionaryReader.CreateTextReader(fs, new XmlDictionaryReaderQuotas()))
            {
                var x = new DataContractSerializer(typeof(T));
                obj = (T) x.ReadObject(reader);
                reader.Close();
                fs.Close();
            }
        }

        return obj;
    }

    public static Main() {
        Order order;
        order = order.deserializeFromTemplate("template.xml");
    }
}

要将其设置为链接,请使用[DataMember] CSS选择器:

[FromTemplate]