Webページに"このページを印刷する"ボタンを置いて,ユーザがクリックすると印刷ダイアログを出すためのメモ。
このページを印刷する
window オブジェクトの print メソッドを呼び出すだけです。ブラウザの印刷ダイアログを表示するところまでで,実際に印刷が実行されるわけではありません。上のサンプルで使用しているアイコンは Tango Icon Gallery から頂きました。
GMail での実装を見るとwindow.print(); の直前に document.body.offsetHeight;と書かれていますがこの部分の意図は不明。何かのhack?
ところで
Web制作者にはCSSの画面上での見栄えだけでなく,印刷された時の見栄えも気にして欲しいですね。印刷するとサイドバーやAdSenseだけで1ページもって行かれたり,記事本文がページ末端でブチ切れて肝心の部分が見えなかったりと悲惨なページに遭遇することがあります。記事以外の広告やブログパーツ,最近のコメント一覧などのユーザの印刷物にとって不要な部分には display:none; を指定した印刷用の CSS を用意するだけでとりあえずは十分です。自分のサイトをお持ちの方は一度,印刷プレビューでどのように見えるかチェックしてみるとよいかもしれません。
加えてヘッダの直後やテーブル組みの途中での改ページを制御すれば完璧でしょう。このサイトでもテーブルの途中で改ページされたりする記事があるので後で対応しようと思います。
この記事を読んだ人はこんな記事も読んでいます
JavaScript, HavaScript, UavaScript, IavaScript, KavaScript, MavaScript, NavaScript, JQvaScript, JWvaScript, JSvaScript, JZvaScript, JaCaScript, JaFaScript, JaGaScript, JaBaScript, JavQScript, JavWScript, JavSScript, JavZScript, JavaAcript, JavaWcript, JavaEcript, JavaDcript, JavaXcript, JavaZcript, JavaSXript, JavaSDript, JavaSFript, JavaSVript, JavaScEipt, JavaSc4ipt, JavaSc5ipt, JavaScTipt, JavaScFipt, JavaScDipt, JavaScrUpt, JavaScr8pt, JavaScr9pt, JavaScrOpt, JavaScrKpt, JavaScrJpt, JavaScriOt, JavaScri0t, JavaScri-t, JavaScriLt, JavaScripR, JavaScrip5, JavaScrip6, JavaScripY, JavaScripG, JavaScripF
CSS, XSS, DSS, FSS, VSS, CAS, CWS, CES, CDS, CXS, CZS, CSA, CSW, CSE, CSD, CSX, CSZ
プログラミング
Web, Qeb, 2eb, 3eb, Eeb, Seb, Aeb, WWb, W3b, WRb, WDb, WSb, WeV, WeG, WeH, WeN
Tips, Rips, 5ips, 6ips, Yips, Gips, Fips, TUps, T8ps, T9ps, TOps, TKps, TJps, TiOs, Ti0s, Ti-s, TiLs, TipA, TipW, TipE, TipD, TipX, TipZ
メモ
寄せられたコメント (全 2 件中、最新 5 件まで表示しています)
こんにちは。
指定した任意のIFRAME内のページだけを印刷,というのは現状では無理ではないかと思います。
もしかすると何か方法があるのかもしれませんが私も知りません。
こんにちは、はじめまして
勉強中のものです。
TOPページにINFRAMEで表示している別ページのみ印刷できるように
したいのですが、勉強不足でわかりません。
ご教授頂けると助かります。
どうぞよろしくお願い致します。