Rumah hujung hadapan web html tutorial 标记语言——打印样式_HTML/Xhtml_网页制作

标记语言——打印样式_HTML/Xhtml_网页制作

May 16, 2016 pm 04:45 PM
&quot guna media Cetak jawatan tanda gaya menaip bahasa

点击这里返回网页教学网 HTML教程 栏目.想浏览CSS教程请点这里。 上文:标记语言——网页应用CSS样式。 Chapter 11 打印样式 先前在第10章中,讨论了几种为文档应用CSS的方法,这一章是要研究打印样式,指定特别用来打印页面的CSS规则.只要几条CSS规则,就 点击这里返回脚本之家 HTML教程 栏目.想浏览CSS教程请点这里。
上文:标记语言——网页应用CSS样式。 Chapter 11 打印样式
先前在第10章中,讨论了几种为文档应用CSS的方法,这一章是要研究打印样式,指定特别用来打印页面的CSS规则.只要几条CSS规则,就能确保结构化标记内容打印到纸上的效果与屏幕上显示的一样好看.
首先来看看media类型,以及它们与提供设备相关CSS的关系. 如何指定打印时采用的样式?
在回答这个问题之前,必须熟悉一个概念,那就是我们能为CSS指定媒体类型(media),声明媒体类型将能使样式针对特定媒体发挥作用.
举例来说,如果想使某个链接的样式表专供电脑屏幕使用,那么可以像这样为标签加上media属性:


media="screen" href="screenstyles.css" />


前面这段代码能保证这个标签所链接的样式只会用于电脑屏幕,或许你想问:"除了电脑屏幕还能针对那些媒体?"答案是...还有不少选择. 媒体类型
除了上面这个例子使用的screen之外,还有不少媒体类型可供选择,以下是所有能够辨识的媒体类型,W3C在CSS2.1标准中定义的(可在http://www.php.cn/找到):    all: 适用于所有设备    braille: 适用于点字触觉回馈设备    embossed: 适用于点字页打印机    handeld: 适用于手持设备(通常具有小屏幕,有限带宽)    print: 适用于分页内容,以及使用打印预览模式在屏幕上查看的文档    projection: 适用于投影简报,举例来说,高射式投影机,请参阅分页内容(http://www.php.cn/)以获得更多关于分页媒体的格式信息    screen: 主要适用于彩色电脑屏幕    speech: 适用于语音合成器.留意:CSS2有个功能类似的媒体类型称为 aural,请参阅听觉样式表附录(http://www.php.cn/)以获得更多信息.    tty: 适用于使用定宽文字格的媒体(像是电报交换机,终端机或是只具备有限显示能力的手持设备),开发者不应在tty使用像素长度单位.    tv: 适用于电视类型的设备(低解析度,低色彩,有限滚动能力,能使用音效).
本章会把焦点集中在all,print和screen媒体类型上.
                                               #p# 指定媒体的两种方法
W3C中有两种方法能为CSS制定媒体类型.在本章开头示范了其中一种方法,也就是使用标签与media属性,接着让我们比较看看这两种方法. 方法A:Media属性


media="screen" href="screenstyles.css" />


与稍早的例子类似,方法A里指定只对电脑屏幕使用screenstyles.css,如此应该能避免在打印,投影,使用手持设备浏览,使用屏幕阅读器之类的时候套用screenstyles.css内的规则. 部分支持
有个重点必须留意,那就是严格支持所有媒体类型有点不切实际,在理想世界里,所有装置与浏览器都应该严格遵守指定的媒体类型,举例来说,如果写了:


media="handheld" href="screenstyles.css" />


那么就会希望只有手持设备(像是PDA,手提电话等)会套用这些样式,不幸的是,标准内容在本文编写的时候似乎还没有普及到浏览器之外的世界,因此并不是任何设备都支持与其对应的媒体类型.
由于这个道理,我们会把焦点放在能够实际应用的媒体类型上,比如说打印样式.

方法B:@media或@import


第二种指定媒体类型的方法是结合@import和@media声明.举例来说,当我们以@import引入外部样式表时,能够一并为它指定媒体类型.
同样的,@media规则能够隔出针对某种特定媒体的规则段落,与方法A类似,以@media指定专门用于打印的样式. 放在里或者放在外部
在方法A里放了
在前面的例子中,通过指定多重媒体类型,把screenandprint.css同时给屏幕显示和打印媒体使用,接着再以@media规则隔开打印专用的样式.
看过两种指定媒体类型的方法之后,接着来看看如何实际以它们提供屏幕显示与打印时使用的样式.
                                               #p#
分开屏幕显示与打印的样式
假设我们想为同一份文件提供两份CSS:一个在显示时使用,另一个在打印时使用.现在以我的个人网站作为示范.
我以标签引用整个网站的主体样式表(styles.css).styles.css的内容只是个简单的@import规则,用以引入另一个外部样式表,这样能够对老旧浏览器(像是Netscape 4.x)隐藏样式设定.
在页面的里,链接到主体样式表styles.css


同时也建立另一个特别针对打印设计的样式表(print.css).在print.css里,我写了只在页面打印时适用的样式.



然后,现在要如何确保这些CSS只会针对各自适合的媒体发挥作用呢?为标签加上media属性就可以了(与方法A一样).

media="screen" href="/css/styles.css" />
media="print" href="/css/print.css" />

通过为styles.css指定screen,就能确保styles.css包含的样式只会对电脑屏幕使用,同样的,把media属性设为print就能确保print.css包含的样式只在使用者打印页面时使用.
现在已经把屏幕与打印样式分开了,接着让我们看看有哪些样式适合放在打印样式表里头. 设计一份打印样式表
这份style.css可能包含了排版布局,字体,定位,背景等规则,但是print.css却是一张白纸,等着我们自定义打印时应用的样式.
设计打印样式要注意的关键就是媒体类型,由于现在正在处理一张纸(而不是浏览器窗口),因此像素长度,大小并不是最佳选择. 用点数指定大小
在打印样式表里,用点数制定字体大小是件十分合理的事情.在这份打印样式表中,首先就为标签定义基础字体大小 -- 使用"点"单位.

body {
font-family: "Times New Roman", serif;
font-size: 12pt;
}

实在太简单了,比起用像素单位来说,这个应该更能想象12点字体会印多大,同时我们也选用serif字体,这种字体打印出来比较细致,而且比较容易阅读. 隐藏不必要的标签节省墨水
网站上或许有不少页面元素在打印版本上完全没有用,像是导航链接,侧边栏,表单以及广告栏之类的元素在打印时经常只会浪费墨水,我们可以在打印样式表内使用display属性将它们设为不显示.使用者经常只想打印页面的内容.
举例来说,如果网站以#nav,#sidebar,#advertising与#search分别存放导航条,侧边栏,广告项目与搜索表单的话,就能在打印样式表里用以下这段声明把这些内容全部隐藏起来:

body {
font-family: "Times New Roman", serif;
font-size: 12pt;
}
#nav, #sidebar, #advertising, #search {
display: none;
}

通过在打印样式表里设定display:none;我们就能使打印结果隐藏掉这些元素.
试着隐藏页面上不必要的元素,很快就能以同一份标记代码轻松为你的网站作出"打印友好"的版本.不必在服务器上用另一份缩减过的模板输出一份完全一样的网站内容 -- 只需要一份额外的CSS文件,指定print媒体类型,搞定!
现在再度证实,以逻辑页面"段落"组织标记结构让未来设计样式更方便.如果页面中有个广告横幅,为它指定id很合理,因为这能把控制权交给CSS.在这个例子中,是在打印时将它隐藏起来.
去掉背景图片和颜色也是节省墨水,让打印结果更容易阅读的技巧之一.
举例来说,如果先前为标签指定了背景图片或是颜色,现在就像这样就能把它去掉:

body {
background: none;
}

当然也能用这个方法去掉其他标签在屏幕样式里指定的背景图片,颜色.
                                               #p#
揭露链接
还有个巧妙的技巧(可惜只能在完整支持CSS2规范的浏览器中产生作用),那就是揭露链接URLs,让他们在打印结果中出现在超链接文字后面.
我们能用:after 这个伪类来编写CSS,让支持的浏览器在超连接文字后面打印出它所连接的URL,目前Mozilla,Safari与Netscape 7.0都支持这个功能,同时,对不支持:after 的浏览器使用者来说也不吃亏,他们只会看到超链接文字本身(Eric Meyer, "CSS Design: Going to Print" , http://www.php.cn/).
让我们为打印样式表加上一条新规则,凸显内容部分里面的超链接URL:

body {
font-family: "Times New Roman", serif;
font-size: 12pt;
}
#nav, #sidebar, #search {
display: none;
}
#content a:link:after, #content a:visited:after {
content: " (" attr(href) ") ";
}

这条规则会使打印出来的页面在超链接文字后面加上URL.URL会被放在一组括号里面,前后各留一个空格,这只会在页面的#content区域发生作用.虽然可以编写一条通用规则揭露所有超链接,但在这里我们选择只揭露内容部分里的超链接 -- 排除页首,页尾与其他区域的链接.
再次提醒,虽然这个功能目前只有少数几个浏览器支持,但是对不支持:after 伪类的浏览器完全无害,他们只会直接忽略这项规则. 链接文字
刚刚我们对连接URL动了些巧妙的手脚,但是也别忘了以独特的方式强调链接文字,让读者能在阅读一般内容时,轻易辨别夹杂在内的超链接.

body {
font-family: "Times New Roman", serif;
font-size: 12pt;
}
#nav, #sidebar, #search {
display: none;
}
a:link, a:visited {
color: blue;
text-decoration: underline;
}
#content a:link:after, #content a:visited:after {
content: " (" attr(href) ") ";
}

当然,也可以在此任意选择颜色,现在我是用预设的蓝色并加上下划线,因为一般人一眼就能将它看成超链接,对黑白打印来说,能够试验出某种灰色,让链接与一般文字产生足够的对比.
                                               #p# 预览打印节省墨水
另一个节省墨水的技巧,是以浏览器的预览打印功能试着显示页面的打印效果,而不是真的把整份页面印到纸上.
在大多数浏览器里,文件 - 打印 对话框对有个预览选项,让你查看页面的打印效果,你能在这里好好观察一下打印样式表的效果. 看起来如何
在我的个人网站上使用打印样式表与先前我们一同制作的示例十分类似,你能比较一下图11-1和11-2,看看我是怎么设计打印样式的,去掉导航,侧边栏,同时揭露链接内容,调整字体和字体大小让本文更容易阅读.

图11-1 SimpleBits 以浏览器查看,使用屏幕样式表
图11-2 SimpleBits打印版
从图11-1和11-2可以清楚的发现,只要一个小小的CSS文档,就能为任何页面提供专门用来打印的特殊版本.这是个任何项目都很容易加入的功能,同时能在使用者尝试打印你的页面时增加体验.
下次如果你的老板说:"我们需要为网站建立一份打印友好的新模板,而且还要完全一样的目录结构",你就能从后口袋中(或其他放得下这本书的地方)抽出这个小技巧了.
如果你想知道更多打印样式的设计技巧,一定要阅读CSS大师 Eric Meyer的文章 " CSS Design: Going to Print " (http://www.php.cn/) 以及 "Print Different" ( http://www.php.cn/). 归纳
我们稍微讨论了打印样式表里面能包含的规则.由于可以指定媒体类型,将打印,屏幕显示所有的样式分开,因此为每种媒体调整细节变得十分简单,容易维护与管理.不再需要为整个网站建立一份打印友好的副本,因为你可以使用相同的标记源代码,配上一份打印专用的CSS文档完成相同的功能.
未来我希望其他设备也能支持更多媒体类型,如果为特定设备设计CSS样式就能让PDA,手提电话与屏幕阅读器正常读取同一份XHTML的话,我们的工作便可以轻松不少.
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah yang perlu saya lakukan jika garis bingkai hilang semasa mencetak dalam Excel? Apakah yang perlu saya lakukan jika garis bingkai hilang semasa mencetak dalam Excel? Mar 21, 2024 am 09:50 AM

Jika semasa membuka fail yang perlu dicetak, kami akan mendapati bahawa garis bingkai jadual telah hilang atas sebab tertentu dalam pratonton cetak Apabila menghadapi situasi sedemikian, kami mesti menanganinya dalam masa Jika ini juga muncul dalam cetakan anda fail Jika anda mempunyai soalan seperti ini, kemudian sertai editor untuk mempelajari kursus berikut: Apakah yang perlu saya lakukan jika garis bingkai hilang semasa mencetak jadual dalam Excel? 1. Buka fail yang perlu dicetak, seperti yang ditunjukkan dalam rajah di bawah. 2. Pilih semua kawasan kandungan yang diperlukan, seperti yang ditunjukkan dalam rajah di bawah. 3. Klik kanan tetikus dan pilih pilihan "Format Sel", seperti yang ditunjukkan dalam rajah di bawah. 4. Klik pilihan "Sempadan" di bahagian atas tetingkap, seperti yang ditunjukkan dalam rajah di bawah. 5. Pilih corak garisan pepejal nipis dalam gaya garisan di sebelah kiri, seperti yang ditunjukkan dalam rajah di bawah. 6. Pilih "Sempadan Luar"

Apakah perisian crystaldiskmark? -Bagaimana menggunakan crystaldiskmark? Apakah perisian crystaldiskmark? -Bagaimana menggunakan crystaldiskmark? Mar 18, 2024 pm 02:58 PM

CrystalDiskMark ialah alat penanda aras HDD kecil untuk pemacu keras yang cepat mengukur kelajuan baca/tulis berurutan dan rawak. Seterusnya, biarkan editor memperkenalkan CrystalDiskMark kepada anda dan cara menggunakan crystaldiskmark~ 1. Pengenalan kepada CrystalDiskMark CrystalDiskMark ialah alat ujian prestasi cakera yang digunakan secara meluas yang digunakan untuk menilai kelajuan baca dan tulis serta prestasi pemacu keras mekanikal dan pemacu keadaan pepejal (SSD Prestasi I/O rawak. Ia adalah aplikasi Windows percuma dan menyediakan antara muka mesra pengguna dan pelbagai mod ujian untuk menilai aspek prestasi cakera keras yang berbeza dan digunakan secara meluas dalam ulasan perkakasan

Bagaimana untuk memuat turun foobar2000? -Cara menggunakan foobar2000 Bagaimana untuk memuat turun foobar2000? -Cara menggunakan foobar2000 Mar 18, 2024 am 10:58 AM

foobar2000 ialah perisian yang boleh mendengar sumber muzik pada bila-bila masa Ia membawakan anda semua jenis muzik dengan kualiti bunyi tanpa kehilangan Versi pemain muzik yang dipertingkatkan membolehkan anda mendapatkan pengalaman muzik yang lebih komprehensif dan selesa mainkan audio lanjutan pada komputer Peranti dipindahkan ke telefon mudah alih untuk memberikan pengalaman main balik muzik yang lebih mudah dan cekap Reka bentuk antara muka adalah ringkas, jelas dan mudah digunakan Ia menggunakan gaya reka bentuk minimalis tanpa terlalu banyak hiasan dan operasi yang menyusahkan untuk bermula dengan cepat. Ia juga menyokong pelbagai kulit dan Tema, memperibadikan tetapan mengikut pilihan anda sendiri, dan mencipta pemain muzik eksklusif yang menyokong main balik berbilang format audio. Ia juga menyokong fungsi perolehan audio untuk melaraskan kelantangan kepada keadaan pendengaran anda sendiri untuk mengelakkan kerosakan pendengaran yang disebabkan oleh kelantangan yang berlebihan. Seterusnya, izinkan saya membantu anda

Bagaimana untuk menandakan kapal penyapu ranjau? -Bagaimana untuk menukar kesukaran Minesweeper? Bagaimana untuk menandakan kapal penyapu ranjau? -Bagaimana untuk menukar kesukaran Minesweeper? Mar 18, 2024 pm 06:34 PM

Bagaimana untuk menandakan kapal penyapu ranjau? Pertama, kita perlu membiasakan diri dengan kaedah penandaan dalam Minesweeper. Biasanya, terdapat dua kaedah pemarkahan biasa dalam permainan Minesweeper: penandaan bendera dan penandaan tanda soal. Tanda bendera digunakan untuk menunjukkan bahawa terdapat lombong dalam blok, yang merupakan tanda deterministik manakala tanda tanya menunjukkan bahawa mungkin terdapat lombong di dalam blok, tetapi ia bukan deterministik. Kedua-dua kaedah penandaan ini memainkan peranan penting dalam permainan, membantu pemain menyimpulkan blok mana yang mungkin mengandungi lombong, supaya dapat meneruskan ke langkah seterusnya dengan berkesan. Penggunaan cekap kaedah penandaan ini boleh meningkatkan kadar kejayaan pemain dalam permainan penyapu ranjau dan mengurangkan risiko memijak ranjau. Oleh itu, semasa bermain permainan penyapu ranjau, jika pemain telah menguasai tanda bendera dan tanda tanya, apabila pemain tidak pasti sama ada terdapat lombong di petak tertentu, dia boleh menggunakan tanda soal untuk menandakannya.

Cara menggunakan aplikasi Baidu Netdisk Cara menggunakan aplikasi Baidu Netdisk Mar 27, 2024 pm 06:46 PM

Storan awan telah menjadi bahagian yang amat diperlukan dalam kehidupan dan kerja harian kita pada masa kini. Sebagai salah satu perkhidmatan storan awan terkemuka di China, Baidu Netdisk telah memenangi hati sebilangan besar pengguna dengan fungsi storan yang berkuasa, kelajuan penghantaran yang cekap dan pengalaman operasi yang mudah. Dan sama ada anda ingin menyandarkan fail penting, berkongsi maklumat, menonton video dalam talian atau mendengar muzik, Baidu Cloud Disk boleh memenuhi keperluan anda. Walau bagaimanapun, ramai pengguna mungkin tidak memahami penggunaan khusus aplikasi Baidu Netdisk, jadi tutorial ini akan memperkenalkan anda tentang cara menggunakan aplikasi Baidu Netdisk secara terperinci Jika anda masih keliru, sila ikuti artikel ini untuk mengetahui lebih lanjut! Cara menggunakan Cakera Rangkaian Awan Baidu: 1. Pemasangan Mula-mula, semasa memuat turun dan memasang perisian Baidu Cloud, sila pilih pilihan pemasangan tersuai.

Cara menanda berbilang lokasi pada Peta Baidu Bagaimana untuk menanda berbilang lokasi Cara menanda berbilang lokasi pada Peta Baidu Bagaimana untuk menanda berbilang lokasi Mar 15, 2024 pm 04:28 PM

Terdapat banyak fungsi di atas, terutamanya untuk peta yang boleh menandakan berbilang tempat Apabila kami mengetahui beberapa tempat, kami pasti akan menggunakan beberapa fungsi tanda baca, supaya kami boleh membawakan anda pelbagai aspek yang berbeza. itu, anda boleh tahu sejauh mana mereka sudah tentu beberapa nama dan maklumat terperinci tempat di atas juga akan dipaparkan , jadi untuk membolehkan semua orang membuat pilihan yang lebih baik dalam pelbagai aspek, hari ini editor akan membawakan anda beberapa pilihan dalam pelbagai aspek, jadi rakan-rakan yang berminat dengan idea, Jika anda juga berminat, datang dan mencubanya. Standard

Cara menggunakan NetEase Mailbox Master Cara menggunakan NetEase Mailbox Master Mar 27, 2024 pm 05:32 PM

NetEase Mailbox, sebagai alamat e-mel yang digunakan secara meluas oleh netizen Cina, sentiasa memenangi kepercayaan pengguna dengan perkhidmatannya yang stabil dan cekap. NetEase Mailbox Master ialah perisian e-mel yang dicipta khas untuk pengguna telefon mudah alih. Ia sangat memudahkan proses menghantar dan menerima e-mel dan menjadikan pemprosesan e-mel kami lebih mudah. Jadi bagaimana untuk menggunakan NetEase Mailbox Master, dan apakah fungsi khusus yang ada di bawah, editor tapak ini akan memberi anda pengenalan terperinci, dengan harapan dapat membantu anda. Mula-mula, anda boleh mencari dan memuat turun aplikasi NetEase Mailbox Master di gedung aplikasi mudah alih. Cari "Induk Peti Mel NetEase" dalam App Store atau Baidu Mobile Assistant, dan kemudian ikut gesaan untuk memasangnya. Selepas muat turun dan pemasangan selesai, kami membuka akaun e-mel NetEase dan log masuk. Antara muka log masuk adalah seperti yang ditunjukkan di bawah

Tutorial BTCC: Bagaimana untuk mengikat dan menggunakan dompet MetaMask pada pertukaran BTCC? Tutorial BTCC: Bagaimana untuk mengikat dan menggunakan dompet MetaMask pada pertukaran BTCC? Apr 26, 2024 am 09:40 AM

MetaMask (juga dipanggil Little Fox Wallet dalam bahasa Cina) ialah perisian dompet penyulitan percuma dan diterima baik. Pada masa ini, BTCC menyokong pengikatan pada dompet MetaMask Selepas mengikat, anda boleh menggunakan dompet MetaMask untuk log masuk dengan cepat, menyimpan nilai, membeli syiling, dsb., dan anda juga boleh mendapatkan bonus percubaan 20 USDT untuk pengikatan pertama. Dalam tutorial dompet BTCCMetaMask, kami akan memperkenalkan secara terperinci cara mendaftar dan menggunakan MetaMask, dan cara mengikat dan menggunakan dompet Little Fox dalam BTCC. Apakah dompet MetaMask? Dengan lebih 30 juta pengguna, MetaMask Little Fox Wallet ialah salah satu dompet mata wang kripto yang paling popular hari ini. Ia percuma untuk digunakan dan boleh dipasang pada rangkaian sebagai sambungan

See all articles