home *** CD-ROM | disk | FTP | other *** search
/ PC World 2005 June / PCWorld_2005-06_cd.bin / novinky / Interval / clanek03.htm < prev    next >
Encoding:
Extensible Markup Language  |  2005-05-05  |  28.5 KB  |  260 lines

  1. <?xml version='1.0' encoding='windows-1250'?>
  2. <!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
  3. <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='cs' lang='cs'>
  4. <head>
  5. <meta http-equiv='Content-Type' content='text/html; charset=windows-1250' />
  6. <meta http-equiv='Content-language' content='cs' />
  7. <meta http-equiv='Cache-control' content='no-cache' />
  8. <meta http-equiv='Pragma' content='no-cache' />
  9. <meta http-equiv='Expires' content='-1' />
  10. <meta name='robots' content='index,follow' />
  11. <meta name='googlebot' content='index,follow,snippet,noarchive' />
  12. <meta name='description' content='Interval.cz - Internetov² magazφn o webdesignu, v²voji webov²ch aplikacφ a e-komerci. VÜe podstatnΘ o technologiφch XHTML, HTML, CSS, DHTML, JavaScript, XML, .NET, ASP, PHP, Java, J2ME, SQL, WAP...' />
  13. <meta name='keywords' content='Interval' />
  14. <meta name='ICBM' content='49.1915, 16.626' />
  15. <meta name='DC.Title' content='Interval.cz' />
  16. <meta name='DC.Identifier' content='http://interval.cz' />
  17. <meta name='DC.Language' content='cs' />
  18. <meta http-equiv='pics-label' content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline EN v2.0" l gen true for "http://interval.cz" r (nz 1 vz 1 lz 1 oz 1 cz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://interval.cz" r (n 0 s 0 v 0 l 0))' />
  19. <meta http-equiv='imagetoolbar' content='no' />
  20. <meta http-equiv='MSThemeCompatible' content='no' />
  21. <meta name='MSSmartTagsPreventParsing' content='true' />
  22. <link rel='shortcut icon' type='image/x-icon' href='favicon.ico' />
  23. <link rel='alternate' type='application/rss+xml' title='RSS Interval.cz' href='http://interval.cz/__rss/rss.asp' />
  24. <link rel='home' href='http://interval.cz' />
  25. <link rel='search' href='http://interval.cz/search_ex.asp' />
  26. <link rel='stylesheet' type='text/css' media='all' href='__services/styles/html4.css' />
  27. <link rel='stylesheet' type='text/css' media='all' href='__services/styles/interval-display.css' />
  28. <link rel='stylesheet' type='text/css' media='print' href='__services/styles/interval-print.css' />
  29. <title>CSS2 - podpora kaskßdov²ch styl∙ v prohlφ₧eΦφch Opera a Firefox -- CSS -- Webdesign -- Interval.cz</title>
  30. </head>
  31. <body class='interval interval-articles'>
  32. <div id='page-header'><div id='interval-logo'><h1 title='Interval.cz - denn∞ o tvorb∞ webu a e-komerci (logo & index link)'><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz'>Interval.cz<span></span></a></h1></div><div id='advertising-page-header'></div><div class='page-maker'> </div></div>
  33. <div id='page-topmenu'><h2 class='textversion'>Navigace</h2><div id='page-mainmenu'><h3 class='textversion'>Hlavnφ menu</h3><ul><li class='first selected'><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz'>Titulnφ strana</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz?idcategory=14'>Webdesign</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz?idcategory=15'>V²voj aplikacφ</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz?idcategory=18'>E-komerce</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz?idcategory=17'>Nßstroje</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz?idcategory=16'>Magazφn</a></li><li class='right selected'><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.inshop.cz'>Knihkupectvφ</a></li><li class='right'><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interforum.interval.cz'>Interforum</a></li></ul></div><div id='page-mainmenu-maker'> </div></div>
  34. <div id='page-body'><div id='page-left'><div id='article'>
  35.  
  36.  
  37. <h2>CSS2 - podpora kaskßdov²ch styl∙ v prohlφ₧eΦφch Opera a Firefox</h2>
  38. <p id='prepend'>Op∞t se vracφme k norm∞ CSS2, kterß znaΦn²m zp∙sobem rozÜi°uje mo₧nosti p∙vodnφch kaskßdov²ch styl∙. Tento Φlßnek dopl≥uje p°ehlednΘ informace o podporu CSS2 v  nov²ch °adßch Opery a v prohlφ₧eΦi Firefox.</p>
  39.  
  40. <p>Je a₧ p°φznaΦnΘ, jak radikßln∞ se m∞nily po₧adavky na modernφ prohlφ₧eΦ v pr∙b∞hu rozvoje internetu. Zatφmco d°φve byla tato aplikace posuzovßna p°edevÜφm z hlediska podpory vlastnφch proprietßrnφch technologiφ a rozÜφ°enφ, v poslednφch letech je jasn∞ patrn² trend p°iklßdßnφ d∙razu na bezpeΦnost a podporu standard∙. A prßv∞ v tomto Φlßnku si shrneme situaci na poli podpory jednΘ z nejd∙le₧it∞jÜφch norem, druhΘ verze kaskßdov²ch styl∙, a doplnφme tak informace uvedenΘ v jednotliv²ch dφlech serißlu. Testovan²mi prohlφ₧eΦi jsou Opera 7.54, t°etφ betaverze velmi ambici≤znφ Opery 8 a Firefox 1.0.1.</p>
  41.  
  42. <h3>Selektory</h3>
  43. <p>Zßkladem kaskßdov²ch styl∙ je bezesporu mechanismus selektor∙ umo₧≥ujφcφ jednoznaΦn∞ definovat elementy, na kterΘ se bude aplikovat p°φsluÜn² styl. O nov²ch selektorech normy CSS2 se doΦtete ve Φlßnku <a href='http://interval.cz/clanek.asp?article=1778' title='Dudek, Jan: CSS2 - selektory, pseudot°φdy a pseudoelementy'>CSS2 - selektory, pseudot°φdy a pseudoelementy</a>. VÜechny t°i prohlφ₧eΦe je zvlßdajφ bez problΘm∙:</p>
  44.  
  45. <div class='table'>
  46. <table cellspacing='0'>
  47. <tr><th>selektor</th><th>syntaxe</th><th>v²znam</th><th>podpora v Ope°e 7.54</th><th>podpora v Ope°e 8b3</th><th>podpora ve Firefox 1.0.1</th></tr>
  48. <tr><td>univerzßlnφ selektor</td><td>*</td><td>vÜechny elementy</td><td>x</td><td>x</td><td>x</td></tr>
  49. <tr><td>typov² selektor</td><td>A</td><td>vÜechny elementy A</td><td>x</td><td>x</td><td>x</td></tr>
  50. <tr><td>selektor t°φdy</td><td>A.trida</td><td>vÜechny elementy A s atributem <samp>class="trida"</samp></td><td>x</td><td>x</td><td>x</td></tr>
  51. <tr><td>ID selektor</td><td>A#mujid</td><td>element A s jedineΦn²m identifikßtorem <samp>id="mujid"</samp></td><td>x</td><td>x</td><td>x</td></tr>
  52. <tr><td>selektor nßslednφka</td><td>A B</td><td>vÜechny elementy B, kterΘ jsou uvnit° elementu A</td><td>x</td><td>x</td><td>x</td></tr>
  53. <tr><td>selektor dφt∞te</td><td>A>B</td><td>vÜechny elementy B, kterΘ jsou dφt∞tem elementu A</td><td>x</td><td>x</td><td>x</td></tr>
  54. <tr><td>selektor p°φmΘho sourozence</td><td>A+B</td><td>vÜechny elementy B, kterΘ majφ stejnΘho rodiΦe jako A jsou v dokumentu hned za nφm</td><td>x</td><td>x</td><td>x</td></tr>
  55. <tr><td>atributovΘ selektory</td><td>A[atr]</td><td>vÜechny elementy A, kterΘ majφ nastaven² atribut atr na libovolnou hodnotu</td><td>x</td><td>x</td><td>x</td></tr>
  56. <tr><td>atributovΘ selektory</td><td>A[atr=hod]</td><td>vÜechny elementy A, kterΘ majφ nastaven² atribut atr na hodnotu hod</td><td>x</td><td>x</td><td>x</td></tr>
  57. <tr><td>atributovΘ selektory</td><td>A[atr~=hod]</td><td>vÜechny elementy A, jejich₧ atribut atr je tvo°en slovy odd∞len²mi mezerami a jedno slovo je rovno hod</td><td>x</td><td>x</td><td>x</td></tr>
  58. <tr><td>atributovΘ selektory</td><td>A[atr|=hod]</td><td>vÜechny elementy A, jejich₧ atribut atr zaΦφnß hod, pokraΦuje pomlΦkou a dalÜφmi znaky</td><td>x</td><td>x</td><td>x</td></tr>
  59. </table>
  60. </div>
  61.  
  62. <p>Selektory se dßle dajφ rozÜi°ovat o pseudo-t°φdy a pseudo-elementy. Jejich podporu prezentuje nßsledujφcφ tabulka:</p>
  63.  
  64. <div class='table'>
  65. <table cellspacing='0'>
  66. <tr><th>pseudo-t°φda/pseudo-element</th><th>v²znam</th><th>podpora v Ope°e 7.54</th><th>podpora v Ope°e 8b3</th><th>podpora ve Firefox 1.0.1</th></tr>
  67. <tr><td>:link</td><td>nenavÜtφven² odkaz</td><td>x</td><td>x</td><td>x</td></tr>
  68. <tr><td>:visited</td><td>navÜtφven² odkaz</td><td>x</td><td>x</td><td>x</td></tr>
  69. <tr><td>:hover</td><td>nad elementem je kurzor</td><td>x</td><td>x</td><td>x</td></tr>
  70. <tr><td>:active</td><td>element je aktivovßn</td><td>x</td><td>x</td><td>x</td></tr>
  71. <tr><td>:focus</td><td>element je zam∞°en (focused)</td><td>ΦßsteΦn∞</td><td>ΦßsteΦn∞</td><td>x</td></tr>
  72. <tr><td>:lang(jazyk)</td><td>element je napsßn v danΘm jazyce</td><td>x</td><td>x</td><td>x</td></tr>
  73. <tr><td>:first-child</td><td>element je prvnφm dφt∞tem jinΘho elementu</td><td>x</td><td>x</td><td>x</td></tr>
  74. <tr><td>:first-letter</td><td>prvnφ pφsmeno elementu</td><td>x</td><td>x</td><td>x</td></tr>
  75. <tr><td>:first-line</td><td>prvnφ °ßdek elementu</td><td>x</td><td>x</td><td>x</td></tr>
  76. <tr><td>:before</td><td>mφsto p°ed elementem</td><td>x</td><td>x</td><td>x</td></tr>
  77. <tr><td>:after</td><td>mφsto za elementem</td><td>x</td><td>x</td><td>x</td></tr>
  78. </table>
  79. </div>
  80.  
  81. <p>I zde se testovanΘ prohlφ₧eΦe vyznamenaly. Jedin²m detailem je rozdφlnΘ p°edßvßnφ zam∞°enφ (<em>focus</em>) v Ope°e a Firefoxu. Firefox podporuje p°edßvßnφ zam∞°enφ (v OS Windows standardn∞ pomocφ klßvesy Tab) nad vÜemi aktivnφmi Φßstmi strßnky (odkazy a formulß°ovΘ prvky), zatφmco Opera p°edßvß focus pouze mezi prvky formulß°e. Proto u nφ nem∙₧ete poΦφtat se zv²razn∞nφm odkaz∙ pomocφ p°edßnφ zam∞°enφ.</p>
  82. <p>VÜechny zmi≥ovanΘ prohlφ₧eΦe sprßvn∞ interpretujφ dynamickΘ pseudo-t°φdy <code>:hover</code> a <code>:active</code> a umo₧≥ujφ je aplikovat na libovolnΘ elementy, ne pouze na odkazy, jako je tomu u MSIE.</p>
  83.  
  84. <h3>@pravidla</h3>
  85. <p>ZavinßΦovß pravidla rozÜi°ujφ kaskßdovΘ styly o dalÜφ funkce. Umo₧≥ujφ import styl∙, jejich cφlenφ na urΦitß mΘdia, nastavenφ tisknutelnΘ oblasti a definici vlastnφch font∙. Vφce se o nich doΦtete ve Φlßnku <a href='http://interval.cz/clanek.asp?article=1805' title='Dudek, Jan: CSS2 - at rules aneb pravidla zavinßΦe'>CSS2 - at rules aneb pravidla zavinßΦe</a>. Jejich podporu znßzor≥uje tato tabulka:</p>
  86.  
  87. <div class='table'>
  88. <table cellspacing='0'>
  89. <tr><th>@pravidlo</th><th>v²znam</th><th>podpora v Ope°e 7.54</th><th>podpora v Ope°e 8b3</th><th>podpora ve Firefox 1.0.1</th></tr>
  90. <tr><td>@import "styl.css";</td><td>importuje styl.css</td><td>x</td><td>x</td><td>x</td></tr>
  91. <tr><td>@import "styl.css" media;</td><td>na za°φzenφ odpovφdajφcφ media importuje styl.css</td><td>x</td><td>x</td><td>x</td></tr>
  92. <tr><td>@media media {}</td><td>styl ve slo₧en²ch zßvorkßch bude aplikovßn pouze na danΘm za°φzenφ</td><td>x</td><td>x</td><td>x</td></tr>
  93. <tr><td>@font-face {}</td><td>definice novΘho fontu</td><td>-</td><td>-</td><td>-</td></tr>
  94. <tr><td>@page {}</td><td>nastavenφ tisknutelnΘ oblasti</td><td>x</td><td>x</td><td>-</td></tr>
  95. </table>
  96. </div>
  97.  
  98. <p>Importovßnφ i cφlenφ styl∙ zvlßdajφ vÜechny prohlφ₧eΦe bez problΘm∙, ani v jednom naopak nenφ podporovßna <a href='http://interval.cz/clanek.asp?article=2711' title='Dudek, Jan: StahovatelnΘ fonty poprvΘ'>dynamickß definice font∙</a> pomocφ pravidla <code>@font-face</code>.</p>
  99.  
  100. <h4>Nastavenφ tisknutelnΘ oblasti a °φzenφ toku textu</h4>
  101. <p>Pomocφ vlastnostφ uveden²ch uvnit° pravidla <code>@page</code> lze ovlivnit <a href='http://interval.cz/clanek.asp?article=1811' title='Dudek, Jan: CSS2 - pravidlo strßnky'>nastavenφ tisknutelnΘ oblasti</a>. Prohlφ₧eΦe umo₧≥ujφ tato nastavenφ:</p>
  102.  
  103. <div class='table'>
  104. <table cellspacing='0'>
  105. <tr><th>mo₧nost/vlastnost</th><th>v²znam</th><th>podpora v Ope°e 7.54</th><th>podpora v Ope°e 8b3</th><th>podpora ve Firefox 1.0.1</th></tr>
  106. <tr><td>margin-left, ...</td><td>okraje tisknutelnΘ oblasti</td><td>x</td><td>x</td><td>-</td></tr>
  107. <tr><td>size</td><td>velikost tisknutelnΘ oblasti, resp. orientace dokumentu</td><td>x</td><td>x</td><td>-</td></tr>
  108. <tr><td>strßnkovΘ pseudo-t°φdy :first, :left, :right</td><td>pseudo-t°φdy pro prßci s lev²mi, resp. prav²mi strßnkami a titulnφ strßnkou</td><td>ΦßsteΦn∞</td><td>x</td><td>-</td></tr>
  109. <tr><td>@page jmeno_stranky {}</td><td>pojmenovanΘ strßnky</td><td>-</td><td>-</td><td>-</td></tr>
  110. <tr><td>page-break-before<br />page-break-after</td><td>zalamovßnφ p°ed a za elementem</td><td>x</td><td>x</td><td>x</td></tr>
  111. <tr><td>page-break-inside</td><td>zalamovßnφ uvnit° elementu</td><td>x</td><td>x</td><td>-</td></tr>
  112. <tr><td>orphans, widows</td><td>min. poΦet °ßdk∙ na zaΦßtku/konci strßnky</td><td>x</td><td>x</td><td>-</td></tr>
  113. </table>
  114. </div>
  115.  
  116. <p>Operu provßzφ u₧ od ÜestΘ verze problΘmy s interpretacφ strßnkov²ch pseudot°φd. Testovanß sedmiΦkovß verze dokßzala sprßvn∞ interpretovat pseudot°φdy <code>:left</code> a <code>:right</code> a naopak ignorovala <code>:first</code>. Pokud byla uvedena t°φda pro levou i pravou stranu, doÜlo ke zvlßÜtnφmu bugu, kdy pozd∞ji uvedenß pseudot°φda byla ·pln∞ ignorovßna (neÜlo tedy zßrove≥ nastavit levou i pravou strßnku).</p>
  117. <p>Beta Opery 8 se pouΦila z p°edchozφch chyb a umo₧≥uje tΘm∞° veÜkerß nastavenφ pomocφ pravidla <code>@page</code> a jejich p°φpadnΘ kombinace. Nezvlßdß, stejn∞ jako jejφ p°ech∙dkyn∞, pojmenovanΘ strßnky.</p>
  118. <p>Firefox 1.0.1 zde ·pln∞ vyho°el, zdß se, ₧e pravidlo <code>@page</code> v∙bec nepodporuje.</p>
  119.  
  120. <h3>Generovan² obsah</h3>
  121. <p>Druhß verze kaskßdov²ch styl∙ nßm umo₧≥uje vklßdat do v²slednΘho dokumentu dalÜφ obsah, nap°φklad text, obsah atribut∙ nebo Φφslovßnφ, na zaΦßtek, respektive konec elementu pomocφ ji₧ zmφn∞n²ch pseudo-element∙ <code>:before</code> a <code>:after</code>. TakΘ lze elementu nastavit sprßvnΘ uvozovky, kterΘ se pak okolo n∞j budou automaticky dopl≥ovat. O generovanΘm obsahu pojednßvß Φlßnek <a href='http://interval.cz/clanek.asp?article=1828' title='Dudek, Jan: CSS2 - automaticky generovan² obsah'>CSS2 - automaticky generovan² obsah</a>. Podporu v prohlφ₧eΦφch zjistφte z nßsledujφcφ tabulky:</p>
  122.  
  123. <div class='table'>
  124. <table cellspacing='0'>
  125. <tr><th>vlastnost</th><th>v²znam</th><th>podpora v Ope°e 7.54</th><th>podpora v Ope°e 8b3</th><th>podpora ve Firefox 1.0.1</th></tr>
  126. <tr><td>content: "°et∞zec"</td><td>vlo₧φ °et∞zec na zaΦßtek/konec elementu</td><td>x</td><td>x</td><td>x</td></tr>
  127. <tr><td>content: url("jmeno_souboru")</td><td>vlo₧φ obsah zadanΘho souboru</td><td>x</td><td>x</td><td>x</td></tr>
  128. <tr><td>content: attr(atr)</td><td>vlo₧φ obsah zadanΘho atributu</td><td>x</td><td>x</td><td>x</td></tr>
  129. <tr><td>content: open_quote (close_quote)</td><td>vlo₧φ otevφrajφcφ/uzavφrajφcφ uvozovku</td><td>x</td><td>x</td><td>x</td></tr>
  130. <tr><td>quotes: seznam_uvozovek</td><td>definice r∙zn²ch uvozovek pro zano°enΘ elementy</td><td>x</td><td>x</td><td>-</td></tr>
  131. <tr><td>Φφslovßnφ</td><td>vklßdßnφ Φφslovßnφ, vno°enΘ Φφslovßnφ, ...</td><td>x</td><td>x</td><td>-</td></tr>
  132. </table>
  133. </div>
  134.  
  135. <p>V p°φpad∞ generovanΘho Φφslovßnφ nemßm k ob∞ma Operßm ₧ßdnΘ nßmitky. Bez problΘm∙ zvlßdajφ vklßdßnφ jakΘhokoli obsahu p°ed a za element a problΘmy jim ned∞lajφ ani uvozovky nebo Φφslovßnφ element∙. Naopak Firefox nezvlßdß r∙znΘ ·rovn∞ uvozovek a vklßdßnφ Φφslovßnφ.</p>
  136.  
  137. <h3>Vizußlnφ model</h3>
  138. <p>Spoustu mo₧nostφ p°ineslo CSS2 do vizußlnφho modelu. P°edevÜφm p°ibyly novΘ hodnoty pro st∞₧ejnφ vlastnost <code>display</code>. O t∞chto zm∞nßch se doΦtete ve Φlßnku <a href='http://interval.cz/clanek.asp?article=1845' title='Dudek, Jan: CSS2 - vizußlnφ formßtovacφ model'>CSS2 - vizußlnφ formßtovacφ model</a>. Nynφ ji₧ k podpo°e t∞chto hodnot ve sledovan²ch prohlφ₧eΦφch:</p>
  139.  
  140. <div class='table'>
  141. <table cellspacing='0'>
  142. <tr><th>hodnota vlastnosti display</th><th>podpora v Ope°e 7.54</th><th>podpora v Ope°e 8b3</th><th>podpora ve Firefox 1.0.1</th></tr>
  143. <tr><td>run-in</td><td>x</td><td>x</td><td>-</td></tr>
  144. <tr><td>compact</td><td>x</td><td>x</td><td>-</td></tr>
  145. <tr><td>marker</td><td>-</td><td>-</td><td>-</td></tr>
  146. <tr><td>inline-table</td><td>x</td><td>x</td><td>-</td></tr>
  147. </table>
  148. </div>
  149.  
  150. <p>DalÜφ novinkou je nastavenφ minimßlnφ, respektive maximßlnφ velikosti elementu:</p>
  151.  
  152. <div class='table'>
  153. <table cellspacing='0'>
  154. <tr><th>vlastnost</th><th>v²znam</th><th>podpora v Ope°e 7.54</th><th>podpora v Ope°e 8b3</th><th>podpora ve Firefox 1.0.1</th></tr>
  155. <tr><td>min-width</td><td>minimßlnφ Üφ°ka</td><td>x</td><td>x</td><td>x</td></tr>
  156. <tr><td>min-height</td><td>minimßlnφ v²Üka</td><td>x</td><td>x</td><td>x</td></tr>
  157. <tr><td>max-width</td><td>maximßlnφ Üφ°ka</td><td>x</td><td>x</td><td>x</td></tr>
  158. <tr><td>max-height</td><td>maximßlnφ v²Üka</td><td>x</td><td>x</td><td>x</td></tr>
  159. </table>
  160. </div>
  161.  
  162. <p>A koneΦn∞ takΘ norma CSS2 definovala novΘ vlastnosti pou₧itelnΘ pro dynamickΘ efekty vyvolanΘ n∞kter²m skriptovacφm jazykem:</p>
  163.  
  164. <div class='table'>
  165. <table cellspacing='0'>
  166. <tr><th>vlastnost</th><th>v²znam</th><th>podpora v Ope°e 7.54</th><th>podpora v Ope°e 8b3</th><th>podpora ve Firefox 1.0.1</th></tr>
  167. <tr><td>overflow</td><td>chovßnφ elementu p°i p°eteΦenφ</td><td>x</td><td>x</td><td>x</td></tr>
  168. <tr><td>clip (dle CSS2.1)</td><td>nastavenφ zobrazovanΘ oblasti elementu</td><td>x</td><td>x</td><td>x</td></tr>
  169. <tr><td>visibility</td><td>viditelnost obsahu elementu</td><td>x</td><td>x</td><td>x</td></tr>
  170. </table>
  171. </div>
  172.  
  173. <p>V tΘto Φßsti pom∞rn∞ zklamal Firefox, kter² nezvlßdß ani jednu z nov²ch hodnot vlastnosti <code>display</code>. Naopak ob∞ Opery zvlßdajφ a₧ na jedinou v²jimku vÜechna nastavenφ vizußlnφho modelu CSS2.</p>
  174.  
  175. <h3>CSS2 a tabulky</h3>
  176. <p>Velk² pokrok v CSS2 takΘ zaznamenala <a href='http://interval.cz/clanek.asp?article=1874' title='Dudek, Jan: CSS2 - formßtovacφ mo₧nosti tabulek'>podpora tabulek</a>. V p°edchozφ Φßsti jsme si ukßzali, jak prohlφ₧eΦe podporujφ hodnotu <code>inline-table</code> vlastnosti <code>display</code>, tedy vlo₧enφ tabulky jako °ßdkov² element. Zde je v²Φet dalÜφch vlastnostφ:</p>
  177.  
  178. <div class='table'>
  179. <table cellspacing='0'>
  180. <tr><th>vlastnost</th><th>v²znam</th><th>podpora v Ope°e 7.54</th><th>podpora v Ope°e 8b3</th><th>podpora ve Firefox 1.0.1</th></tr>
  181. <tr><td>caption-side</td><td>umφst∞nφ popisu tabulky</td><td>ΦßsteΦn∞</td><td>ΦßsteΦn∞</td><td>x</td></tr>
  182. <tr><td>text-align: "znak"</td><td>zarovnßnφ obsahu bun∞k na urΦit² znak</td><td>-</td><td>-</td><td>-</td></tr>
  183. <tr><td>visibility: collapse</td><td>schovßnφ Φßsti tabulky pou₧itelnΘ p°i dynamick²ch efektech</td><td>-</td><td>-</td><td>-</td></tr>
  184. <tr><td>table-layout</td><td>nastavenφ algoritmu vykreslovßnφ tabulky</td><td>x</td><td>x</td><td>x</td></tr>
  185. <tr><td>border-collapse</td><td>nastavenφ druhu okraje tabulky</td><td>x</td><td>x</td><td>x</td></tr>
  186. <tr><td>border-spacing</td><td>mezera mezi bu≥kami</td><td>x</td><td>x</td><td>x</td></tr>
  187. <tr><td>empty-cells</td><td>chovßnφ okraje u bun∞k bez obsahu</td><td>x</td><td>x</td><td>x</td></tr>
  188. <tr><td>border: hidden;</td><td>zruÜenφ okraje u zhroucenΘho modelu</td><td>x</td><td>x</td><td>x</td></tr>
  189. </table>
  190. </div>
  191.  
  192. <p>P°esto₧e podpora CSS2 v tΘto oblasti nenφ tak velkß jako v jin²ch oblastech, lze s klidn²m sv∞domφm °φci, ₧e vÜechny d∙le₧itΘ mo₧nosti druhΘ verze kaskßdov²ch styl∙ jsou implementovßny. VÜemi testovan²mi prohlφ₧eΦi je ignorovßno pouze zarovnßnφ na znak a specißlnφ hodnota <code>collapse</code> vlastnosti <code>visibility</code>, urΦenß pro dynamickΘ skr²vßnφ °ßdk∙. Opery majφ problΘm s umis¥ovßnφm popisu tabulky pomocφ vlastnosti <code>caption-side</code>, zvlßdajφ pouze umφst∞nφ nad a pod tabulkou, ostatnφ vlastnosti pova₧ujφ za umφst∞nφ nad tabulkou. Poslednφ poznßmka se t²kß implicitnφ hodnoty vlastnosti <code>empty-cells</code>, u Opery to je <code>hide</code>, zatφmco u Firefoxu <code>show</code>.</p>
  193.  
  194. <h3>Polohovßnφ</h3>
  195. <p>Poslednφ skupina vlastnostφ umo₧≥uje umφs¥ovat elementy mimo normßlnφ tok dokumentu. Takto se dajφ vytvß°et takzvanΘ <em>CSS layouty</em>. O polohovßnφ se doΦtete vφce ve Φlßnku <a href='http://interval.cz/clanek.asp?article=1883' title='Dudek, Jan: CSS2 - pozicovßnφ element∙'>CSS2 - pozicovßnφ element∙</a>. Nßsleduje poslednφ tabulka tohoto Φlßnku reprezentujφcφ podporu polohovacφch vlastnostφ:</p>
  196.  
  197. <div class='table'>
  198. <table cellspacing='0'>
  199. <tr><th>vlastnost</th><th>v²znam</th><th>podpora v Ope°e 7.54</th><th>podpora v Ope°e 8b3</th><th>podpora ve Firefox 1.0.1</th></tr>
  200. <tr><td>position: relative</td><td>relativnφ umφst∞nφ v∙Φi p∙vodnφ poloze</td><td>x</td><td>x</td><td>x</td></tr>
  201. <tr><td>position: absolute</td><td>absolutnφ urΦenφ pozice</td><td>x</td><td>x</td><td>x</td></tr>
  202. <tr><td>position: fixed</td><td>element z∙stßvß stßle na zadanΘ pozici</td><td>x</td><td>x</td><td>x</td></tr>
  203. <tr><td>float</td><td>nastavenφ elementu jako plovoucφho</td><td>x</td><td>x</td><td>x</td></tr>
  204. <tr><td>clear</td><td>zakßzßnφ obtΘkßnφ elementu</td><td>x</td><td>x</td><td>x</td></tr>
  205. <tr><td>z-index</td><td>z sou°adnice elementu</td><td>x</td><td>x</td><td>x</td></tr>
  206. </table>
  207. </div>
  208.  
  209. <p>Ve vÜech testovan²ch prohlφ₧eΦφch se tedy nebojte zobrazovat jakΘkoli strßnky s CSS layoutem, m∞ly by je zvlßdnout bez problΘm∙.</p>
  210.  
  211. <h3>Formßtovßnφ XML</h3>
  212. <p>VÜechny t°i prohlφ₧eΦe dßle umo₧≥ujφ zobrazovat obecnΘ XML soubory. Pokud jim nep°i°adφte ₧ßdn² styl, budou v Ope°e vÜechny elementy vypsßny za sebou jako °ßdkovΘ elementy, p°esn∞ podle normy. Firefox naopak nabφdne obsah souboru podobn∞ jako MSIE ve form∞ stromovΘho v²pisu, a poznßmku, ₧e k souboru nebyl p°i°azen ₧ßdn² popis stylu. V opaΦnΘm p°φpad∞ bude dokument sprßvn∞ naformßtovßn podle danΘho stylu.</p>
  213.  
  214. <h3>Nastavenφ posuvnφk∙</h3>
  215. <p>Microsoft Internet Explorer p°iÜel s mo₧nostφ nastavit pomocφ svΘho rozÜφ°enφ CSS barvu posuvnφk∙ (scrollbar∙). Opera tuto mo₧nost podporuje takΘ. Ale proto₧e jde o nestandardnφ rozÜφ°enφ, musφte to nejd°φve povolit. Provedete to p°es <kbd class='mouse'>| Tools | Preferences | Page style |</kbd> zaÜkrtnutφm mo₧nosti <em>Enable styling of scrollbars</em>. V osmΘ verzi Opery odpovφdajφcφ nabφdku najdete v <kbd class='mouse'>| Tools | Preferences | Advanced |C ontent |</kbd>. Firefox toto rozÜφ°enφ nepodporuje.</p>
  216.  
  217. <h3>Souhrn</h3>
  218. <p>Pokud bychom hledali absolutnφho vφt∞ze tohoto testu prohlφ₧eΦ∙, stala by se jφm osmß verze Opery, kterß stavφ na v²born²ch v²sledcφch svΘ p°edchozφ verze. Firefox p°ekvapiv∞ v n∞kter²ch oblastech zaostßvß, neznßmou je pro n∞j nastavovßnφ oblasti tisku. P°esto lze i o n∞m °φci, ₧e podporuje vÜechny d∙le₧itΘ prvky CSS2 a ₧e jde o kvalitnφ prohlφ₧eΦ, zvlßÜt∞ ve srovnßnφ s Microsoft Internet Explorerem.</p>
  219.  
  220. <div id='article-author'>
  221. <a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/autor.asp?author=125'>Dudek, Jan</a> (13. 4. 2005)
  222. <div id='article-about-author'>
  223.  
  224. </div>
  225. </div>
  226.  
  227. <div class='refer'><h3><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/serial.asp?serial=44' title='p°ehled Φlßnk∙ vΦetn∞ anotacφ'>CSS2 - kaskßdovΘ styly druhΘ generace</a></h3><p>Autor zde zmapoval nejnov∞jÜφch vlastnosti CSS2 a pustil se i na tenk² led jejich podpory r∙zn²mi prohlφ₧eΦi. ZvlßÜtnφ pozornost v∞noval mΘn∞ obvykl²m, mßlo rozÜφ°en²m a p°itom velmi u₧iteΦn²m vlastnostem CSS. Tato sΘrie Φlßnk∙ ji₧ byla uzav°ena, aΦkoli dalÜφ pokraΦovßnφ nelze vylouΦit.</p><ul><li><strong>CSS2 - podpora kaskßdov²ch styl∙ v prohlφ₧eΦφch Opera a Firefox</strong> (prßv∞ Φtete)</li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=2850'>CSS2 - podpora kaskßdov²ch styl∙ v sedmiΦkovΘ °ad∞ Opery</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=1900'>CSS2 - mluvenΘ styly</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=1883'>CSS2 - pozicovßnφ element∙</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=1874'>CSS2 - formßtovacφ mo₧nosti tabulek</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=1845'>CSS2 - vizußlnφ formßtovacφ model</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=1828'>CSS2 - automaticky generovan² obsah</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=1811'>CSS2 - pravidlo strßnky</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=1805'>CSS2 - at rules aneb pravidla zavinßΦe</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=1778'>CSS2 - selektory, pseudot°φdy a pseudoelementy</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=1745'>CSS2 - kaskßdovΘ styly podruhΘ</a></li></ul></div>
  228.  
  229.  
  230. </div></div>
  231. <div id='page-right'><h2 class='textversion'>Prav² sloupek</h2>
  232. <div id='search'><h3 class='textversion'>Vyhledßvßnφ</h3><form method='get' action='http://interval.cz/search.asp'><div><input type='text' name='hledej' class='text' /><input type='submit' class='submit' value='Najdi!' /></div></form><div><a href='http://interval.cz/search_ex.asp'>RozÜφ°enΘ vyhledßvßnφ</a></div></div>
  233.  
  234.  
  235.  
  236. <div class='page-right-box book'>
  237.     <h3>Kni₧nφ novinka</h3>
  238.     <div class='page-right-box-in'>
  239.         <div class='book-top'>
  240.             <h4><a href='http://interval.cz/__redirect/redirect.asp?what=interval_booknews&url=http://interval.inshop.cz/inshop/scripts/detail.asp?ItemID=290'>PHP - moduly, rozÜφ°enφ a akcelerßtory</a></h4>
  241.         </div>
  242.         <div class='image'>
  243.             <img src='podklady/knihy/image.jpg' alt='obßlka' title='obßlka' /></a>
  244.         </div>
  245.         <div class='book-bottom'>Cena: <span class='book-price-old'>299 KΦ</span> <span class='book-price-new'>269 KΦ</span></div>
  246.     </div>
  247. </div>
  248.  
  249.  
  250.  
  251. <div class='page-right-box reading'><h3 title='NejΦten∞jÜφ Φlßnky za poslednφch 14 dn∙'>NejΦten∞jÜφ</h3><div class='page-right-box-in'><ul><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3863'>Firefox - od webdesignu po tuning</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3861'>Kdo si J2ME, nezlobφ - ·vod pro ka₧dΘho</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3862'>Multimetoda a Java</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3877'>Perl-compatible regulßrnφ v²razy v PHP - tvrzenφ v praxi, podmφn∞nΘ subv²razy</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3878'>Novß ekonomika a globßlnφ informaΦnφ spoleΦnost</a></li></ul></div></div><div class='page-right-box cauldron'><h3 title='Nejdiskutovan∞jÜφ Φlßnky za poslednφch 21 dn∙'>Diskuznφ kotel</h3><div class='page-right-box-in'><ul><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3863' title='(25 komentß°∙)'>Firefox - od webdesignu po tuning</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3484' title='(17 komentß°∙)'>OhleduplnΘ otevφrßnφ nov²ch oken s JavaScriptem</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3861' title='(5 komentß°∙)'>Kdo si J2ME, nezlobφ - ·vod pro ka₧dΘho</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3877' title='(4 komentß°∙)'>Perl-compatible regulßrnφ v²razy v PHP - tvrzenφ v praxi, podmφn∞nΘ subv²razy</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3859' title='(2 komentß°∙)'>Perl-compatible regulßrnφ v²razy v PHP - lokßlnφ modifikßtory, tvrzenφ</a></li></ul></div></div>
  252.  
  253.  
  254.  
  255. <div class='page-right-box emailserv'><h3>Email servis</h3><div class='page-right-box-in'><form action='prihlaseni.asp' method='post'><div class='shell'><input class='text' type='text' name='adresa' /></div><div class='shell'><input class='radio' type='radio' value='1' name='co' checked='checked' />T²dennφ p°ehled Φlßnk∙</div><div class='shell'><input class='radio' type='radio' value='2' name='co' />HELP konference</div><div class='shell'><input class='submit' type='submit' value='P°ihlßsit' /></div></form></div></div>
  256. </div>
  257. <div class='page-maker'> </div><div class='page-maker-white'> </div></div>
  258. <div id='page-foot'><div id='page-foot-menu'><a href='http://interval.cz/reklama.asp'>Inzerce na Interval.cz</a> | <a href='http://interval.cz/redakce.asp'>Redakce Interval.cz</a> | <a href='http://interval.cz/autori.asp'>Hledßme novΘ autory</a></div><div id='issn'>ISSN 1212-8651</div><div id='page-foot-zoner'>© Zoner software, s.r.o., vÜechna prßva vyhrazena, tento server dodr₧uje <a href='http://interval.cz/privacy.asp'>prßvnφ p°edpisy</a>o ochran∞ osobnφch ·daj∙.</div></div>
  259. </body>
  260. </html>