如果你提到印刷用CSS在網(wǎng)上,很多人工作?打印樣式表?是想到使用。 我們都是用來(lái)創(chuàng)建一個(gè)樣式表時(shí)要求web文檔打印出來(lái)。 這些樣式表確保打印版本是清晰的,我們不會(huì)引起用戶打印出巨大的圖像。 然而,CSS也被用于格式書(shū),目錄和小冊(cè)子,內(nèi)容可能從未被設(shè)計(jì)為一個(gè)web頁(yè)面。
在本文中,我們將看看CSS模塊創(chuàng)建了用于web瀏覽器,但處理印刷和分頁(yè)的媒體。 我將解釋如何選擇器,屬性和值,他們介紹工作。 我完成了一個(gè)工作示例,您可以使用作為一個(gè)起始點(diǎn)為自己的實(shí)驗(yàn)。 對(duì)于這個(gè)例子,我們將需要一個(gè)支持這一專(zhuān)業(yè)的用戶代理CSS。 我將使用的王子,這是一個(gè)商業(yè)產(chǎn)品。 然而,王子有一個(gè)免費(fèi)的版本,可用于非商業(yè)用途,使其很好的工具來(lái)嘗試這些例子。
為什么打印HTML和CSS有意義嗎
這看起來(lái)可能有點(diǎn)奇怪,內(nèi)容不是特別的web應(yīng)該保持HTML和CSS格式化。 這看起來(lái)就沒(méi)那么怪當(dāng)你意識(shí)到流行的電子書(shū)閱讀器格式如EPUB和手機(jī)域名是HTML和CSS。 此外,即使整個(gè)手稿或目錄不是在網(wǎng)站上發(fā)表,其中一些可能會(huì)。 HTML成為一個(gè)方便的格式標(biāo)準(zhǔn)化,更容易處理比擁有一切在Word文檔或傳統(tǒng)的桌面發(fā)布包。
CSS的網(wǎng)頁(yè)之間的差異和CSS打印
和概念轉(zhuǎn)變,最大的區(qū)別是,打印文件是指一個(gè)頁(yè)面一個(gè)固定大小的模型。 而在網(wǎng)絡(luò)上我們不斷提醒我們不知道視窗的大小,在打印每個(gè)頁(yè)面都有一個(gè)固定大小的關(guān)系,我們所做的一切。 由于這種固定的頁(yè)面大小,我們必須考慮我們的文檔頁(yè)面的集合,分頁(yè)的媒體,而非連續(xù)介質(zhì),是一個(gè)web頁(yè)面。
分頁(yè)的媒體介紹的概念,在網(wǎng)絡(luò)上沒(méi)有任何意義。 例如,您需要能夠生成頁(yè)碼,把章標(biāo)題的利潤(rùn)率,打破內(nèi)容適當(dāng),以便數(shù)據(jù)并不成為與他們分離的標(biāo)題。 您可能需要?jiǎng)?chuàng)建交叉引用和腳注,從您的文檔索引和表的內(nèi)容。 你可以將文檔導(dǎo)入一個(gè)桌面出版包和手動(dòng)創(chuàng)建所有的這一切,然而,工作就需要重做你下次更新副本。 的,這就是CSS規(guī)范被設(shè)計(jì)用于創(chuàng)建分頁(yè)的媒體。
因?yàn)榉猪?yè)的規(guī)范設(shè)計(jì)媒體,我們不會(huì)考慮瀏覽器支持本文——它不會(huì)很多的意義。 稍后,我們將看一個(gè)用戶代理設(shè)計(jì)將HTML和CSS變成一個(gè)PDF使用這些規(guī)范。
規(guī)范
CSS的你已經(jīng)知道將有用的格式打印。 專(zhuān)為打印,我們有“?CSS分頁(yè)媒體模塊?”和“?CSS生成內(nèi)容分頁(yè)媒體模塊?”規(guī)范。 讓我們來(lái)看看這是如何工作的。
@PAGE規(guī)則
的?@page 規(guī)則允許您指定一個(gè)頁(yè)框的各個(gè)方面。 例如,您需要指定頁(yè)面的尺寸。 下面的規(guī)則指定一個(gè)默認(rèn)頁(yè)面大小為5.5 - 8.5英寸。 如果你想打印一本書(shū),也許是由按需印刷服務(wù),然后發(fā)現(xiàn)大小您可以使用是很重要的。
@page?{?size:?5.5in?8.5in;?}
除了指定的大小和長(zhǎng)度值,也可以使用紙張大小關(guān)鍵字,如“A4”或“法律”。
@page?{?size:?A4;?}
你也可以使用一個(gè)關(guān)鍵字指定頁(yè)面的方向——“肖像”或“景觀”。
@page?{?size:?A4?landscape;?}
理解頁(yè)面模型
在進(jìn)一步討論之前,我們應(yīng)該理解頁(yè)面分頁(yè)模型媒體是如何工作的,因?yàn)樗男袨橛悬c(diǎn)不同屏幕上的東西是如何工作的。
頁(yè)面模型定義了一個(gè)區(qū)域,然后16周?chē)?保證金盒子?。 您可以控制頁(yè)面的大小之間的區(qū)域和邊緣的大小頁(yè)面的邊緣區(qū)和頁(yè)面本身。 表的規(guī)范解釋很好這些箱子的大小。
(?看到大版本?)
頁(yè)面上的頁(yè)面區(qū)域空間將您的頁(yè)面內(nèi)容流。 當(dāng)它跑出房間,就會(huì)創(chuàng)建另一個(gè)頁(yè)面。 保證金框僅用于CSS-generated內(nèi)容。
左和右頁(yè)面?zhèn)鞑?/h4>
頁(yè)面模型的另一個(gè)方面是,它定義了偽類(lèi)選擇器的左和右頁(yè)的文檔。 如果你看看你手頭的任何印刷書(shū)籍,您可能會(huì)看到利潤(rùn)的規(guī)模和利潤(rùn)率的在左邊和右邊頁(yè)面內(nèi)容是不同的。
我們可以使用這些選擇器來(lái)定義不同的幅度大小對(duì)我們的頁(yè)面。
@page?:left?{?margin-left:?3cm;?}?@page?:right?{?margin-left:?4cm;?}
另外兩個(gè)偽類(lèi)選擇器定義。 的?:首先 選擇目標(biāo)文檔的第一頁(yè)。
@page?:first?{?}
的?:空白 偽類(lèi)選擇器目標(biāo)“故意留空的任何頁(yè)面。 “添加這個(gè)文本,我們可以使用生成的目標(biāo)上方邊緣框的內(nèi)容。
@page?:blank?{?@top-center?{?content:?"This?page?is?intentionally?left?blank."?}?}
生成的內(nèi)容和分頁(yè)的媒體
在最后一個(gè)示例中,我們使用CSS-generated內(nèi)容向上方邊緣添加文本框。 你會(huì)發(fā)現(xiàn),生成創(chuàng)建我們的書(shū)內(nèi)容至關(guān)重要。 這是唯一的方法可以添加到我們的保證金盒子。 例如,如果我們想要將這本書(shū)的標(biāo)題添加到左下邊緣盒右頁(yè),我們將使用生成的內(nèi)容。
@page:right{?@bottom-left?{?margin:?10pt?0?30pt?0;?border-top:?.25pt?solid?#666;?content:?"My?book";?font-size:?9pt;?color:?#333;?}?}
分頁(yè)符
還“分頁(yè)媒體”的一部分規(guī)范是如何控制分頁(yè)符的信息。 如已述,一旦頁(yè)面內(nèi)容填充區(qū)域,它將移動(dòng)到一個(gè)新的頁(yè)面。 如果一個(gè)標(biāo)題剛剛被寫(xiě)入頁(yè)面,你可能最終與一個(gè)標(biāo)題的頁(yè)面完成,相關(guān)內(nèi)容在下一頁(yè)開(kāi)始。 在印刷書(shū)籍,你會(huì)盡量避免這種情況。 其他地方你可能希望避免休息之間的中間表和圖及其說(shuō)明。
一本書(shū)的新篇章?H1 標(biāo)題是常見(jiàn)的。 迫使這個(gè)標(biāo)題的開(kāi)始頁(yè)面,設(shè)置?page-break-before 來(lái)?總是 。
h1?{?page-break-before:?always;?}
為了避免一個(gè)標(biāo)題后直接減免,使用?page-break-after 。
h1,?h2,?h3,?h4,?h5?{?page-break-after:?avoid;?}
為了避免破壞數(shù)據(jù)和表,使用?page-break-inside 財(cái)產(chǎn)。
table,?figure?{?page-break-inside:?avoid;?}
計(jì)數(shù)器
書(shū)都是關(guān)于編號(hào)的東西——頁(yè)面,章節(jié),甚至數(shù)據(jù)。 我們可以通過(guò)CSS添加這些數(shù)字,拯救我們脫離不得不重編號(hào)的一切,因?yàn)槲覀儧Q定說(shuō),添加一個(gè)新的圖壯志未酬身先死一個(gè)章。 我們這樣做是使用?CSS計(jì)數(shù)器?。
最明顯的地方開(kāi)始頁(yè)碼。 CSS給了我們一個(gè)預(yù)定義的頁(yè)計(jì)數(shù)器,它始于1和增量與每一個(gè)新頁(yè)面。 在你的樣式表中,您將使用此計(jì)數(shù)器作為生成內(nèi)容的價(jià)值,把頁(yè)計(jì)數(shù)器在你的一個(gè)盒子。 在下面的示例中,我們添加頁(yè)碼右頁(yè)面的右下角,左頁(yè)的左下角。
@page:right{?@bottom-right?{?content:?counter(page);?}?}?@page:left{?@bottom-left?{?content:?counter(page);?}?}
我們還創(chuàng)建了一個(gè)計(jì)數(shù)器?頁(yè)面 。 此計(jì)數(shù)器將永遠(yuǎn)是你的文檔的總頁(yè)數(shù)。 如果你想輸出”120年第3頁(yè),“你可以。
@page:left{?@bottom-left?{?content:?"Page?"?counter(page)?"?of?"?counter(pages);?}?}
您可以創(chuàng)建自己的柜臺(tái)和增量和重置您需要。 要?jiǎng)?chuàng)建一個(gè)計(jì)數(shù)器,使用?counter-reset 財(cái)產(chǎn),增量?counter-increment 。 下面的CSS規(guī)則將創(chuàng)建一個(gè)柜臺(tái)章命名?chapternum 并與每個(gè)增量?H1 ——在這本書(shū)中一個(gè)章節(jié)的開(kāi)始。 然后,我們使用該計(jì)數(shù)器的值生成內(nèi)容添加章節(jié)號(hào)和前一段章的實(shí)際題目。
body?{?counter-reset:?chapternum;?}?h1.chapter:before?{?counter-increment:?chapternum;?content:?counter(chapternum)?".?";?}
我們可以做相同的數(shù)據(jù)在書(shū)中。 數(shù)字?jǐn)?shù)據(jù)的一種常見(jiàn)方法是使用?chapternum.figurenum 。 所以,“圖3 - 2”將在第三章第二圖。 在?H1 ,我們可以重置?figurenum 為了使每一章開(kāi)始從1。
body?{?counter-reset:?chapternum?figurenum;?}?h1?{?counter-reset:?figurenum;?}?h1.title:before?{?counter-increment:?chapternum;?content:?counter(chapternum)?".?";?}?figcaption:before?{?counter-increment:?figurenum;?content:?counter(chapternum)?"-"?counter(figurenum)?".?";?}
設(shè)置字符串
再看一個(gè)印刷書(shū)籍。 當(dāng)你翻閱一章,你會(huì)看到這一章的標(biāo)題是印在左邊或者右邊頁(yè)面。 這聽(tīng)起來(lái)可能有點(diǎn)奇怪,“生成內(nèi)容分頁(yè)媒體”規(guī)范讓我們使用CSS實(shí)現(xiàn)這一目標(biāo)。
我們使用一個(gè)屬性命名?繩子 在選擇我們想要的內(nèi)容。 章的標(biāo)題,這將是?H1 。 的價(jià)值?繩子 是你想給這個(gè)內(nèi)容,然后呢?內(nèi)容() 。 然后您可以輸出,這是使用生成的內(nèi)容?字符串() 。
h1?{?string-set:?doctitle?content();?}?@page?:right?{?@top-right?{?content:?string(doctitle);?margin:?30pt?0?10pt?0;?font-size:?8pt;?}?}
當(dāng)你生成分頁(yè)的媒體,每次一個(gè)?H1 發(fā)生時(shí),寫(xiě)入的內(nèi)容?doctitle 然后在右上的保證金框中輸出的右頁(yè),只有當(dāng)另一個(gè)變化?H1 發(fā)生。
腳注
腳注的一部分”?CSS生成內(nèi)容分頁(yè)媒體模塊?”規(guī)范。 腳注的工作方式是,您將添加的文本腳注內(nèi)聯(lián),裹在HTML標(biāo)記(可能是一個(gè)跨度),與一個(gè)類(lèi)來(lái)將其識(shí)別為一個(gè)腳注。 當(dāng)頁(yè)面生成的內(nèi)容,刪除“腳注元素”,變成一個(gè)腳注。
在CSS中,使用腳注的價(jià)值?浮動(dòng) 為你的腳注類(lèi)屬性來(lái)創(chuàng)建一個(gè)規(guī)則。
.fn?{?float:?footnote;?}
在你的文檔中,使用這個(gè)類(lèi)來(lái)包裝任何腳注文本。
FootnotesFootnotes?and?notes?placed?in?the?footer?of?a?document?to?reference?the?text.?The?footnote?will?be?removed?from?the?flow?when?the?page?is?created.span>?are?useful?in?books?and?printed?documents.p>
腳注有一個(gè)預(yù)定義的計(jì)數(shù)器,以同樣的方式表現(xiàn)為頁(yè)計(jì)數(shù)器。 通常,您會(huì)希望通過(guò)1每次遞增計(jì)數(shù)器?FN 類(lèi)和重置它發(fā)生在每一章的開(kāi)始。
.fn?{?counter-increment:?footnote;?}?h1?{?counter-reset:?footnote;?}
腳注的各個(gè)部分可以有針對(duì)性的CSS偽元素。 的?footnote-call 是數(shù)字的錨文本,顯示有一個(gè)腳注。 這使用腳注計(jì)數(shù)器的值作為生成的內(nèi)容。
.fn::footnote-call?{?content:?counter(footnote);?font-size:?9pt;?vertical-align:?super;?line-height:?none;?}
的?腳注標(biāo)記 是前面的數(shù)字標(biāo)記放置在腳注文本文檔的頁(yè)腳。 這些行為以類(lèi)似的方式有序列表的數(shù)據(jù)生成CSS。
.fn::footnote-marker?{?font-weight:?bold;?}
腳注本身被放置在頁(yè)邊,在一個(gè)特殊區(qū)域頁(yè)面的命名?@footnotes 。 你將目標(biāo)和風(fēng)格,面積如下。
@page?{?@footnotes?{?border-top:?1pt?solid?black;?}?}
交叉引用
在繼續(xù)工作之前我們學(xué)到的一切的例子,讓我們看看交叉引用。 在網(wǎng)絡(luò)上,我們通過(guò)添加鏈接交叉引用的東西。 在書(shū)中或其他印刷文檔,您通常會(huì)參考引用的頁(yè)碼的地方被發(fā)現(xiàn)。 因?yàn)轫?yè)碼可能會(huì)改變根據(jù)這本書(shū)是印刷的格式和版本之間用CSS這樣為我們省去了經(jīng)歷和改變所有的數(shù)字。
我們使用另一個(gè)新屬性,?target-counter 添加這些數(shù)字。 首先創(chuàng)建鏈接在你的文檔中,給他們一個(gè)?href ,這是在文檔中元素的ID,您想要的目標(biāo)。 同時(shí),添加一個(gè)類(lèi)來(lái)識(shí)別它們交叉引用,而不是外部鏈接,我使用?xref 。
Chapter?1a>
鏈接之后,再次使用生成的內(nèi)容輸出?(x)頁(yè) ,在那里?X 是書(shū)中的位置的數(shù)量,可以找到ID。
a.xref:after?{?content:?"?(page?"?target-counter(attr(href,?url),?page)?")";?}
我們會(huì)看這種技術(shù)在實(shí)踐中當(dāng)我們創(chuàng)建一個(gè)工作示例的目錄。
把它放在一起:一個(gè)例子的書(shū)
我們看了很多不同的屬性在隔離。 他們更有意義,一旦你把它們使用通過(guò)構(gòu)建一本書(shū)。
實(shí)際使用這個(gè)CSS創(chuàng)建一本書(shū),你需要一個(gè)支持它的用戶代理。 目前,很少有事情實(shí)現(xiàn)這個(gè)規(guī)范;是最容易的一個(gè)?王子?。 一個(gè)獨(dú)立的商業(yè)許可王子是昂貴的,但是,您可以使用王子為非商業(yè)項(xiàng)目免費(fèi)。 這意味著,如果你只是想嘗試這些技術(shù),你可以。 另外,如果你有非商業(yè)使用這種技術(shù),你可以用王子那些書(shū)格式。
我已經(jīng)提取通道古登堡計(jì)劃從我最喜歡的一本書(shū),?我們的貓?由哈里森堰?。 我選擇這本書(shū)是因?yàn)槲蚁矚g貓,因?yàn)樗袌D片和腳注,我可以使用它來(lái)證明格式。
你可以找到我的文件使用,再加上一個(gè)生成的PDF,結(jié)束了?GitHub上?。 如果你想嘗試CSS和構(gòu)建這本書(shū)你自己,那么你將需要下載并安裝?王子?。 王子是一個(gè)命令行工具在Mac上,雖然有一個(gè)Windows的GUI,我將使用命令行,因?yàn)樗娴氖欠浅:?jiǎn)單的。
使用一個(gè)終端窗口,切換到你的書(shū)的目錄或從GitHub的位置你下載我的文件。
cd?/Users/username/smashing-css-books
現(xiàn)在,運(yùn)行王子:
prince?-s?pdf-styles.css?book.html?builds/book.pdf
這將創(chuàng)建一個(gè)PDF中?構(gòu)建 文件夾命名?book.pdf 。 現(xiàn)在,如果你進(jìn)行任何更改CSS和HTML,您可以運(yùn)行看看王子是不同的。
HTML文檔
我的整個(gè)編譯“書(shū)”在一個(gè)HTML文檔。 編譯文件王子是可能的,但我發(fā)現(xiàn)它更簡(jiǎn)單的只是處理一個(gè)大文檔。 之前的章節(jié),從一開(kāi)始?H1 ,我有一個(gè)div,包含封面圖像,然后對(duì)書(shū)的目錄。
目錄鏈接id章節(jié)的?H1 標(biāo)題。
????Our?Cats?and?All?About?Themtitle>?????head>? ??div>??Extracts?from?Our?Cats?and?All?About?Them?by?Harrison?Weirh1>?
?
- The?First?Cat?Showa>li>?
- Trained?Catsa>li>?
- General?Managementa>li>?
- Superstition?and?Witchcrafta>li>?ul>?div>?
The?First?Cat?Showh1>?
…?p>?
Trained?Catsh1>?
…?p>?
General?Managementh1>?
…?p>?
Superstition?and?Witchcrafth1>?
…?p>?body>?html>
然后CSS使用的所有事情到目前為止我們已經(jīng)描述了。 首先,我們需要建立一個(gè)大小為這本書(shū)使用?@page 規(guī)則。 然后,我們使用?:首先 偽類(lèi)選擇器刪除1頁(yè)的邊緣,因?yàn)檫@個(gè)頁(yè)面會(huì)有封面圖片。
@page?{?size:?5.5in?8.5in;?margin:?70pt?60pt?70pt;?}?@page:first?{?size:?5.5in?8.5in;?margin:?0;?}然后我們處理封面的圖片,確保它覆蓋整個(gè)頁(yè)面區(qū)域。
div.frontcover?{?page:?cover;?content:?url("images/cover.png");?width:?100%;?height:?100%;?}
(?看到大版本?)
接下來(lái),我們處理的細(xì)節(jié)左邊和右邊的頁(yè)面,使用?:對(duì) 和?:左 偽類(lèi)傳播。
右手邊的傳播將這本書(shū)的標(biāo)題在保證金框左下角,右下角的頁(yè)計(jì)數(shù)器,右上的章的標(biāo)題。 章的標(biāo)題使用?繩子 進(jìn)一步的樣式表。
@page:right{?@bottom-left?{?margin:?10pt?0?30pt?0;?border-top:?.25pt?solid?#666;?content:?"Our?Cats";?font-size:?9pt;?color:?#333;?}?@bottom-right?{?margin:?10pt?0?30pt?0;?border-top:?.25pt?solid?#666;?content:?counter(page);?font-size:?9pt;?}?@top-right?{?content:?string(doctitle);?margin:?30pt?0?10pt?0;?font-size:?9pt;?color:?#333;?}?}
(?看到大版本?)
左邊的傳播在右下角,這本書(shū)的標(biāo)題頁(yè)計(jì)數(shù)器在左下角。
@page:left?{?@bottom-right?{?margin:?10pt?0?30pt?0;?border-top:?.25pt?solid?#666;?content:?"Our?Cats";?font-size:?9pt;?color:?#333;?}?@bottom-left?{?margin:?10pt?0?30pt?0;?border-top:?.25pt?solid?#666;?content:?counter(page);?font-size:?9pt;?}?}
(?看到大版本?)
第一頁(yè),包含封面圖片,我們會(huì)確保沒(méi)有生成的內(nèi)容似乎通過(guò)設(shè)置它?正常的 。
@page:first?{?@bottom-right?{?content:?normal;?margin:?0;?}?@bottom-left?{?content:?normal;?margin:?0;?}?}下一節(jié)的樣式表處理計(jì)數(shù)器。 除了預(yù)設(shè)頁(yè)計(jì)數(shù)器,我們?yōu)檎鹿?jié)定義計(jì)數(shù)器和數(shù)字。
/*?Reset?chapter?and?figure?counters?on?the?body?*/?body?{?counter-reset:?chapternum?figurenum;?font-family:?"Trebuchet?MS",?"Lucida?Grande",?"Lucida?Sans?Unicode",?"Lucida?Sans",?Tahoma,?sans-serif;?line-height:?1.5;?font-size:?11pt;?}?/*?Get?the?title?of?the?current?chapter,?which?will?be?the?content?of?the?h1.Reset?figure?counter?because?figures?start?from?1?in?each?chapter.?*/?h1?{?string-set:?doctitle?content();?page-break-before:?always;?counter-reset:?figurenum;?counter-reset:?footnote;?line-height:?1.3;?}?/*?Increment?chapter?counter?*/?h1.chapter:before?{?counter-increment:?chapternum;?content:?counter(chapternum)?".?";?}?/*?Increment?and?display?figure?counter?*/?figcaption:before?{?counter-increment:?figurenum;?content:?counter(chapternum)?"-"?counter(figurenum)?".?";?}章標(biāo)題前的數(shù)字放置。 數(shù)據(jù)也顯示他們的號(hào)碼。
(?看到大版本?)
我們創(chuàng)建腳注解釋前,上標(biāo)腳注的呼喚。
.fn?{?float:?footnote;?}?.fn?{?counter-increment:?footnote;?}?.fn::footnote-call?{?content:?counter(footnote);?font-size:?9pt;?vertical-align:?super;?line-height:?none;?}?.fn::footnote-marker?{?font-weight:?bold;?}?@page?{?@footnotes?{?border-top:?0.6pt?solid?black;?padding-top:?8pt;?}?}
(?看到大版本?)
然后,我們添加一些規(guī)則來(lái)控制頁(yè)面。 你需要非常小心過(guò)于嚴(yán)格。 如果你的書(shū)有很多表和數(shù)據(jù),然后添加許多特定的規(guī)則可能會(huì)導(dǎo)致大量的長(zhǎng)差距在書(shū)中。 試驗(yàn)和測(cè)試將顯示多遠(yuǎn)你可以控制的。 我發(fā)現(xiàn)下面的規(guī)則是一個(gè)很好的起點(diǎn)。
記住,這是一個(gè)用戶代理的建議。 在某些情況下,阻止一個(gè)表破壞將是不可能的如果頁(yè)面上的表不適合!
h1,?h2,?h3,?h4,?h5?{?font-weight:?bold;?page-break-after:?avoid;?page-break-inside:avoid;?}?h1+p,?h2+p,?h3+p?{?page-break-before:?avoid;?}?table,?figure?{?page-break-inside:?avoid;?}最后,我們風(fēng)格的目錄,我們使用一個(gè)有趣的地方。 在描述交叉引用,我解釋了我們?nèi)绾问褂?target-counter 顯示頁(yè)碼的ID。 這就是我們做表的內(nèi)容。 下面的規(guī)則把頁(yè)碼后鏈接表中每一章的內(nèi)容。
ul.toc?a::after?{?content:?target-counter(attr(href),?page);?}
(?看到大版本?)
一般書(shū)中,您將使用領(lǐng)導(dǎo)人點(diǎn)排隊(duì)的所有頁(yè)碼右邊距。 令人驚訝的是,CSS給了我們一個(gè)方法,通過(guò)添加?領(lǐng)袖() 之前在生成的內(nèi)容數(shù)量。
ul.toc?a::after?{?content:?leader('.')?target-counter(attr(href),?page);?}
(?看到大版本?)
我們現(xiàn)在有一個(gè)完整的樣式表來(lái)構(gòu)建我們的書(shū)。 我避免花費(fèi)大量的時(shí)間在排版上,而不是集中在創(chuàng)建一個(gè)書(shū)的細(xì)節(jié)。 然而,從這一點(diǎn)上,你可以實(shí)驗(yàn)和添加自己的風(fēng)格設(shè)計(jì)創(chuàng)造一個(gè)獨(dú)特的書(shū)。
不僅僅是書(shū)!
記住,這些技術(shù)不僅僅是書(shū)。 你可以使用它們來(lái)生成打印和PDF版本的產(chǎn)品目錄直接從HTML的一個(gè)網(wǎng)站,你為一個(gè)客戶開(kāi)發(fā)。 或者你可以從web內(nèi)容創(chuàng)建傳單和小冊(cè)子。
如果你想創(chuàng)建PDF文檔使用王子,從一個(gè)網(wǎng)站?DocRaptor?是一個(gè)偉大的選擇。 這個(gè)服務(wù)通過(guò)一個(gè)API使用王子。 你可以發(fā)送文件通過(guò)API和接收一個(gè)PDF——允許用戶下載內(nèi)容的完美的PDF。 我們看著在本文中所擁有的一切都可能通過(guò)一個(gè)API與DocRaptor集成。
即使你沒(méi)有立即需要PDF生成,這是一個(gè)迷人的CSS方面,這是一個(gè)有用的技能有藏,所以,你知道什么是可能的,當(dāng)一個(gè)用例。
文章整理來(lái)自網(wǎng)絡(luò),轉(zhuǎn)載請(qǐng)注明北京網(wǎng)站建設(shè)公司-北京傳誠(chéng)信,翻譯不好,請(qǐng)見(jiàn)諒!
- 相關(guān)推薦
- 大家在看
關(guān)鍵詞:
做網(wǎng)站的公司。
因?yàn)楝F(xiàn)在各行各業(yè)都離不開(kāi)網(wǎng)站。 讓我們?yōu)槟敿?xì)解釋一下關(guān)于“做網(wǎng)站的公司”這個(gè)概念,以及您可以如何選擇合適的公司來(lái)幫您搭建網(wǎng)站。做網(wǎng)站的公......
公司集團(tuán)企業(yè)網(wǎng)站建設(shè)需要注意哪些細(xì)節(jié)?
公司集團(tuán)企業(yè)網(wǎng)站建設(shè)需要注意以下細(xì)節(jié):一、明確網(wǎng)站建設(shè)目標(biāo)在建設(shè)網(wǎng)站之前,公司集團(tuán)企業(yè)應(yīng)明確網(wǎng)站的建設(shè)目標(biāo)。例如,是為了提升企業(yè)形象、拓展市......
公司集團(tuán)企業(yè)建設(shè)網(wǎng)站的預(yù)算大概是多少?
公司集團(tuán)企業(yè)建設(shè)網(wǎng)站的預(yù)算因多種因素而異,以下是大致的預(yù)算范圍:基礎(chǔ)型網(wǎng)站預(yù)算范圍:如果選擇模板建站,費(fèi)用可能在數(shù)千元到 1 萬(wàn)元左右。一些......
公司集團(tuán)企業(yè)為什么要建設(shè)網(wǎng)站?建設(shè)網(wǎng)站的流程是怎樣的?
公司集團(tuán)企業(yè)為什么要建設(shè)網(wǎng)站?公司集團(tuán)企業(yè)建設(shè)網(wǎng)站主要有以下幾個(gè)重要原因:在當(dāng)今互聯(lián)網(wǎng)時(shí)代,消費(fèi)者從產(chǎn)品研究到查詢地點(diǎn)和營(yíng)業(yè)時(shí)間等各個(gè)方面都......
建網(wǎng)站需要考慮哪些因素?
建網(wǎng)站需要考慮以下因素:一、企業(yè)需求層面滿足消費(fèi)者需求:在互聯(lián)網(wǎng)時(shí)代,消費(fèi)者在產(chǎn)品研究、查詢地點(diǎn)和營(yíng)業(yè)時(shí)間等方面都依賴互聯(lián)網(wǎng),因此企業(yè)需要一......
2024年建網(wǎng)站一般需要多少錢(qián)?
建網(wǎng)站的費(fèi)用因多種因素而異,傳誠(chéng)信擁有 20 年高品質(zhì)網(wǎng)站建設(shè)經(jīng)驗(yàn),是成熟可靠的網(wǎng)絡(luò)品牌建設(shè)合作伙伴。在長(zhǎng)期的發(fā)展過(guò)程中,積累了豐富的專(zhuān)業(yè)知......
網(wǎng)站建設(shè)公司之間的價(jià)格差異為什么區(qū)別大
網(wǎng)站建設(shè)可以分為模板式和定制式。模板式網(wǎng)站使用現(xiàn)成的模板進(jìn)行搭建,成本較低,適合小型企業(yè)或個(gè)體戶。而定制式網(wǎng)站則需要根據(jù)客戶的具體需求進(jìn)行開(kāi)......
如何評(píng)估一家北京網(wǎng)站建設(shè)公司的可靠性和安全性
評(píng)估北京網(wǎng)站建設(shè)公司的可靠性評(píng)估北京網(wǎng)站建設(shè)公司的可靠性時(shí),您可以從以下幾個(gè)方面進(jìn)行考察:項(xiàng)目經(jīng)驗(yàn):查看公司的官方網(wǎng)站或參考案例,了解它們過(guò)......
建網(wǎng)站一般需要多少錢(qián)?如何規(guī)劃才能節(jié)省成本?
時(shí)要節(jié)省網(wǎng)站建設(shè)的成本,你可以采取以下幾個(gè)策略:1. 選擇合適的網(wǎng)站類(lèi)型根據(jù)你的業(yè)務(wù)需求和預(yù)算,選擇適合你的網(wǎng)站類(lèi)型。例如,如果你的業(yè)務(wù)相對(duì)......
年中鉅惠,模板自助建站1000元起!
年中鉅惠來(lái)襲!現(xiàn)在,我們推出了超值的網(wǎng)站建設(shè)服務(wù)——模板自助建站,只需1000元起!是的,你沒(méi)有聽(tīng)錯(cuò),只要1000元,就可以擁有一個(gè)專(zhuān)業(yè)的網(wǎng)......
集團(tuán)公司企業(yè)網(wǎng)站建設(shè)方案
所謂集團(tuán)網(wǎng)站就是一些產(chǎn)品線廣、旗下品牌多的企業(yè)涉足電子商務(wù)領(lǐng)域所建設(shè)的能夠展現(xiàn)集團(tuán)整體精神風(fēng)貌以及產(chǎn)品內(nèi)容的企業(yè)門(mén)戶網(wǎng)站?,F(xiàn)在越來(lái)越多的集團(tuán)......
協(xié)會(huì)為什么要建設(shè)自己的網(wǎng)站
協(xié)會(huì)建設(shè)自己的網(wǎng)站有以下幾個(gè)原因:1.宣傳協(xié)會(huì):協(xié)會(huì)網(wǎng)站可以為協(xié)會(huì)提供一個(gè)宣傳平臺(tái),向公眾傳遞協(xié)會(huì)的宗旨、目標(biāo)、工作和成果,提高協(xié)會(huì)的知名度......
房地產(chǎn)網(wǎng)重建方案(需求)
房地產(chǎn)網(wǎng)重建方案 一、 目前情況: 1、目前北京房產(chǎn)網(wǎng)在百度排名情況,無(wú)排名;估算日IP不超過(guò)30人次瀏覽;與2014年相比,下滑很多(2......
UX設(shè)計(jì)和網(wǎng)站設(shè)計(jì)如何相互影響?
UX設(shè)計(jì)是否會(huì)影響網(wǎng)站設(shè)計(jì)?雖然許多人忽略了用戶體驗(yàn)設(shè)計(jì)對(duì)網(wǎng)站設(shè)計(jì)的重要性,但良好的用戶體驗(yàn)實(shí)際上可以以極大的方式影響對(duì)方。在這里發(fā)揮關(guān)鍵作......
建設(shè)企業(yè)網(wǎng)站的過(guò)程。
建設(shè)網(wǎng)站那是一個(gè)比較復(fù)雜且麻煩俄事情,我公司結(jié)果過(guò)年的經(jīng)驗(yàn)將過(guò)程整理下來(lái)供各位瀏覽,希望對(duì)象建設(shè)網(wǎng)站的企業(yè)有些把幫助。 建設(shè)網(wǎng)站需......
企業(yè)為何要制作網(wǎng)站?模板建站和定制建站那個(gè)最適合自己的企業(yè)?
Q:企業(yè)為何要制作網(wǎng)站A:互聯(lián)網(wǎng)是21世紀(jì)最具潛力的虛擬市場(chǎng),隨者高科技產(chǎn)業(yè)不斷推層出新,各式各樣科技化產(chǎn)品紛紛問(wèn)世,替人們生活帶來(lái)更多便利......
什么原因造成的你的網(wǎng)站流量急速下降?網(wǎng)站流量急速下降的原因分析
任何網(wǎng)站所有者的最佳時(shí)間是網(wǎng)站流量顯示持續(xù)增長(zhǎng),轉(zhuǎn)換率穩(wěn)步上升,頁(yè)面瀏覽量看起來(lái)很好。然而,無(wú)論網(wǎng)站表現(xiàn)如何,這種表現(xiàn)永久性的可能性接近于零......
老年人網(wǎng)建設(shè)方案。
老年人網(wǎng)建設(shè)方案 (討 論 稿) 2012年6月 目錄 一、網(wǎng)站需求分析 1.1 需求分析 1.2 網(wǎng)站定位 1.......
網(wǎng)站備案的常見(jiàn)知識(shí)!
1、請(qǐng)問(wèn)審核多長(zhǎng)時(shí)間可以完成? 答:根據(jù)《非經(jīng)營(yíng)性互聯(lián)網(wǎng)信息服務(wù)備案管理辦法》(信息產(chǎn)業(yè)部令第33號(hào))有關(guān)規(guī)定,自備案人最近一次提交備案信息......
如何設(shè)計(jì)一個(gè)優(yōu)秀的導(dǎo)航網(wǎng)站
如何設(shè)計(jì)一個(gè)優(yōu)秀的導(dǎo)航網(wǎng)站當(dāng)你談?wù)摌?biāo)簽和結(jié)構(gòu)時(shí),許多人忘記了它們是導(dǎo)航的重要組成部分。當(dāng)您的網(wǎng)站設(shè)計(jì)取得成功時(shí),導(dǎo)航可以成為一切。標(biāo)簽和結(jié)構(gòu)......