如何禁止打印页面
解决思路:
要真正禁止打印页面是办不到的,但是如果能设置让用户打印到的是空白,也算是实现禁止打印的目的了。
具体步骤:
代码示例:
- <html>
- <head><title>不可打印的页面</title>
- <style>
- @media print{
- body{display:none}
- }
- </style>
- </head>
- <body>
- 文档主要内容
- </body>
- </head>
注意:@media print{}规则中所定义的CSS仅对打印时的页面生效。
技巧:在很多论坛中在打印帖子时都是用一个专门的页面来实现,如果能熟练运用@media print{}规则,就不用单独做一个打印用的页了。
提示:
@media print{}规则中可以用来代码print的还有all和screen。
类似@media的规则如表2.2.1所示。
规则说明
@import指定导入的外部样式表及目标媒体。该规则必须在样式表头部最先声明
@charset在外部样式表文件内使用。指定该样式表使用的字符集。
@font-face设置嵌入HTML文档的OpenType字体(需IE5+支持)
@media指定样式表规则用于指定的媒体类型(需IE5.5+支持)
特别提示
运行本例代码,然后打印网页,打印结果将不包括”文档主要内容”。
特别说明
本例主要运用了@media规则来定义页面对于打印时应用的样式,print意思是所定义的CSS应用于打印机,类似的print媒体类型还有:
all 应用于所有类型的设备
screen 应用于计算机的显示器
禁止选取,禁止右键,禁止拷贝
- <BODY onselectstart="return false" oncopy="return false;" oncut="return false;" oncontextmenu="window.event.returnValue=false" >
1.oncontextmenu=”window.event.returnValue=false” 将彻底屏蔽鼠标右键
2.onselectstart=”return false” 取消选取、防止复制
3.onpaste=”return false” 不准粘贴
4.oncopy=”return false;” oncut=”return false;” 防止复制
禁止Ctrl+P
- <!--
- function fKey(){
- var keycode = event.keyCode;
- if(event.ctrlKey && keycode == 80){
- alert("此功能已禁止.");
- return false;
- }
- }
- //-->
- </script>
body中添加 onkeydown=”return fKey();”