Autor | Zpráva | ||
---|---|---|---|
ddd Profil |
#1 · Zasláno: 23. 9. 2004, 18:46:29
Mám udělané str. za pomoci 2 vložených rámů (levé a pravé menu) s tabulkou uprostřed, která obsahuje hl. text. Existuje nějaká vychytávka typu <style media="print">, do které mohu uzavřít celou tabulku, která se bude tisknout. Nechci to dělat pomocí JavaScriptu. Díky za pomoc.
|
||
DoubleThink Profil * |
#2 · Zasláno: 23. 9. 2004, 19:03:15
mohl bys co celé uzavřít do DIVu a pak mu nastavit pro tisk display:none
|
||
ddd Profil |
#3 · Zasláno: 23. 9. 2004, 20:31:43 · Upravil/a: ddd
A jaké jsou ještě neutrální značky jako div. Já ho totiž používám docela často. Nebo lze si vymyslet vlastní značku? A poslední problém, jak nastavit hl. tabulce(ne těm malým uvnitř ní), aby se netiskli její okraje? Dik
|
||
Yuhů Profil |
#4 · Zasláno: 23. 9. 2004, 22:51:10
možná neznáš třídy -- atribut class. Když nastavíš třeba
<div class="netisknout"> <iframe ...></iframe> ... a potom ve stylu @media print { .netisknout {display: none} } tak to je přesně to, co potřebuješ. Vlastní značky si dělat nemůžeš, ale vlastní classy ano. |
||
ddd Profil |
#5 · Zasláno: 24. 9. 2004, 11:42:04
Funguje to. Ale ta tabulka má stanovenou pevnou šířku a má okraje.... Nešlo by udělat class tisknout, do kterého bych uzavřel samotný obsah tabulký, který by se jako jediný tisknul?
|
||
Yuhů Profil |
#6 · Zasláno: 24. 9. 2004, 12:29:31
i to samozřejmě jde. V takovýchto detailech teprve plně vyniknou výhody beztabulkových layoutů, v nic je to jednodušší.
|
||
ddd Profil |
#7 · Zasláno: 24. 9. 2004, 13:14:21
Bohužel, ale nevím jak na to. Můžete mi prosím poradit?
|
||
Yuhů Profil |
#8 · Zasláno: 24. 9. 2004, 14:30:13
nemůžeme :-) Tu stránku nevidíme. Někam ji prosím nakopíruj na web a přesně popiš, co potřebuješ, aby to dělalo.
|
||
llook Profil |
#9 · Zasláno: 24. 9. 2004, 16:23:07
Nejlepším řešením by ale bylo naučit se základy CSS. Myslím že po pročtení základního kurzu CSS na Jak psát web bys měl tohle umět (a ještě mnohem víc). A ty znalosti co tím získáš se určitě budou v budoucnu hodit.
|
||
ddd Profil |
#10 · Zasláno: 24. 9. 2004, 18:45:28
to llook: Ja uz jsem se na ty zaklady css dival a asi bych ty str. s css pozicovanim sloubcu dal pekne dohromady, ale chci udelat VETSI web, a nechce se mi prepisovat 1000 souboru, kdyz zmenim odkaz v menu, ani programem, takhle jak to mam je to pohodlne.
to Yuhů: Ja ty str. ještě trochu vylepším a zítra večer bych ti je poslal emailem. Před uveřejněním, které je ještě celkem vzdálené, by je neměl nikdo vidět... |
||
Yuhů Profil |
#11 · Zasláno: 25. 9. 2004, 02:49:26
jestli můžu prosit, rozhodně mi žádné stránky neposílej. Nedostal bych se k tomu.
|
||
ddd Profil |
#12 · Zasláno: 25. 9. 2004, 10:21:15 · Upravil/a: ddd
Dobře. Ale stejně si myslím, že str. není potřeba vidět. Mám prostě sloupec pomocí ifame, vedle hl. obsah v tabulce a vedle další sloupec pomocí iframe. Potřeboval bych pouze vědět, jak vytvořit vlastní class, kterou bych označil pouze to co chci tisknout. A pak bych to udělal následovně:
<head> <link rel="stylesheet" type="text/css" href="css.css"> </head> <body> <iframe>..........</iframe> <table> <div class="tisknout"> ---obsah, který chci vytisknout--- </div> </table> <iframe>..........</iframe> Jenom nevím, co napsat do závorek za ".tisknout" v "css.css": @media print { .tisknout {????????????} } |
||
llook Profil |
#13 · Zasláno: 25. 9. 2004, 13:04:57
Lepší je ve stylu říct co netisknout a zbytek ať se tiskne než naopak. Třeba k tomuto příkladu bych to viděl takto:
@media print { iframe { display: none; } } |
||
Yuhů Profil |
#14 · Zasláno: 25. 9. 2004, 16:48:46
nejen, že je to lepší, ona je to jediná možná cesta, pokud vím.
Teoreticky by bylo možno vymyslet to takto: * říct celému tělu, že se nemá tisknout * a pak říci konkrétní tabulce, že se má tisknout čili nějak takhle: media @print{ body {display: none;} table {display: block;} /* třeba*/ } Jenomže to nebude a nemůže fungovat. Je to tím, že pokud něčemu dáte display: none, tak tím přetlučete každou budoucí deklaraci vnořeného elementu. Jinak řečeno jakmile bude mít body display: none, tak se nevytiskne nikdy nic. |
||
ddd Profil |
#15 · Zasláno: 25. 9. 2004, 19:31:14
to llook: to je velmi dobré řešení-nemusím do každého souboru davát iframe mezi vymyšlenou class .netisknout . Ale jeste musim nastavi v css, aby hl. tabulka neměla pevnou šířku a ohraničení, a aby se netiskla reklama2.gif(v budoucnu to bude ta od webu zdarma). Mám to tam následovně:
<table border="2" align="left" cellspacing="0" width="450" height="436" style="border-collapse: collapse" cellpadding="18"> <tr><td><img border="0" src="reklama2.gif" width="400" height="60"></td></tr> <tr><td valign="top" width="450" height="512"> <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber2"> <tr> <td width="50%">Na stránkách se usilovně pracuje. </td> <td width="50%"><img border="0" src="domek.gif" width="198" height="169"></td> </tr> </table> <br> <table border="1" cellspacing="0" style="border-collapse: collapse" bordercolor="#C0C0C0" width="100%" id="AutoNumber1"> <tr> <td width="22%" bgcolor="#DBDBDB"><span lang="en-us"> <b><span style="font-size: 11px">Datum</span></b></span></td> <td width="78%" bgcolor="#DBDBDB"><span lang="en-us"> <b><span style="font-size: 11px">Aktualizace</span></b></span></td> </tr> <tr> <td width="22%"><span lang="en-us"> 24.09.2004</span></td> <td width="78%"><span lang="en-us"> Spuštěna zkušební verze webu</td> </tr> </table> </td></tr> </table> Něco mi říká, že tabulka uprostřed nebyl nejlepší krok :) |
||
Časová prodleva: 3 dny
|
|||
ddd Profil |
#16 · Zasláno: 28. 9. 2004, 12:44:07
Abych neuváděl neustále pouze teorii kódu svých str., umístil jsem na web testovací verzi:
http://www.ceskehry.wz.cz |
||
Časová prodleva: 16 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0