O ukladaní vo formáte HTML v Microsoft Word 97

Ako jeden z možných spÖsobov vytvárania HTML dokumentov (webovských stránok) sa často používa aj možnosť ponúkaná...


Ako jeden z možných spÖsobov vytvárania HTML dokumentov (webovských stránok) sa
často používa aj možnosť ponúkaná MS Word 97 Ulož ako HTML. Napriek
jednoduchosti tohto spÖsobu treba počítať s tým, že takto vygenerované
dokumenty nemusia byť v úplnom súlade so štandardom jazyka HTML.
To má za následok buď nesprávne zobrazovanie takto vytvorených HTML-dokumentov
v rÖznych internetovských prehliadačoch, alebo zobrazovanie v podobe, ktorá sa
rozchádza s pÖvodným zámerom autora.
Na ilustráciu tu uvedieme jednoduchý príklad, v ktorom na prezeranie výsledkov
používame MSIE 4.0, Netscape Navigator 4.07 a Opera 3.21.
Vytvorenie dokumentu
Najprv otvoríme nový dokument v MS Word 97 a pripravíme obyčajný text, v ktorom
každé prvé slovo v riadku sformátujeme odlišne do nasledujúceho textu:
normal normal text
bold normal text
italic normal text
underline normal text
Predošlé 4 riadky označíme ako blok, prekopírujeme a sformátujeme prekopírovaný
blok ako číslovaný zoznam (pomocou tlačidla "Číslovanie"). Rovnako je možné
najprv vytvoriť očíslovaný zoznam a až potom sformátovať slová "bold", "italic"
a "underline". To znamená, že nižšie popísané výsledky nezávisia od postupu
užívateía. Mali by sme dostať nasledujúce:
Teraz tento súbor uložíme vo formáte HTML pomocou menu Súbor-Ulož ako HTML.
Prekvapenia pri prezeraní
Po otvorení uloženého HTML-súboru v MS Internet Exploreri uvidíme na obrazovke:
Vidieť, že čísla položiek zoznamu sú napriek očakávaniam ovplyvnené
formátovaním, ktoré by sa ich dotknúť nemalo. Aj Netscape Navigator zobrazí
tento HTML-súbor podobne.
Ale Opera to zobrazí ináč, bez akýchkoívek zvýraznení žiadne tučné písmo,
žiadna kurzíva, žiadne podčiarknutie.
Ale prečo?
Príčina
Príčina toho, že sa text v uvedenom príklade nezobrazuje podía pÖvodných
predstáv, spočíva v tom, že pri ukladaní súborov vo formáte HTML MS Word 97
generuje nesprávny HTML kód:
<P>normal normal text</P>
<B><P>bold</B> normal text</P>
<I><P>italic</I> normal text</P>
<U><P>underline</U> normal text</P>
<OL>
<LI>normal normal text</LI>
<B><LI>bold</B> normal text</LI>
<I><LI>italic</I> normal text</LI>
<U><LI>underline</U> normal text</LI></OL>
Treba si všimnúť nesprávne vnorenie príkazov. Napríklad v druhom riadku
očíslovaného zoznamu máme prekrývajúce sa prostredia
<B>.</B> a <LI>.</LI>:
<B><LI>bold</B> normal text</LI>
Práve preto sa značky (v prípade očíslovaných zoznamov poradové čísla, v
prípade neočíslovaných zoznamov odrážky) zobrazujú nesprávne (MS Internet
Explorer, Netscape Navigator) alebo sa formátovanie textu, ktoré nie je v
súlade s pravidlami, ignoruje (Opera).
Je to podobné nesprávnemu vnoreniu cyklov, za ktoré študenti prvého ročníka
dostávajú na skúške z programovania známku "nevyhovel". To, že táto chyba je
systematická, celkový nepríjemný dojem ešte zosilňuje.
Napriek uvedenej chybe sú prvé štyri riadky zobrazené v MS Internet Exploreri a
v Netscape Navigatore podía pÖvodných užívateíských predstav, čo sa
pravdepodobne vysvetíuje tým, že na začiatku vývoja HTML bol na označovanie
odstavcov používaný iba príkaz <P>. Avšak Opera je prehliadač oveía prísnejší a
dÖslednejší, a preto nesprávne HTML-značkovanie jednoducho ignoruje.
Potrebné korekcie
Až po úprave zdrojového HTML kódu v uvádzanom príklade v súlade s pravidlami
HTML do tvaru
<P>normal normal text</P>
<P><B>bold</B> normal text</P>
<P><I>italic</I> normal text</P>
<P><U>underline</U> normal text</P>
<OL>
<LI>normal normal text</LI>
<LI><B>bold</B> normal text</LI>
<LI><I>italic</I> normal text</LI>
<LI><U>underline</U> normal text</LI>
<OL>
budú všetky tri uvedené internetovské prehliadače zobrazovať text rovnako a
konečne správne.
Druhý chod
V prípade, ak sa používa viac rÖznych príkazov HTML, situácia mÖže byť ešte
zamotanejšia.
V MS Word 97 pripravíme text s diakritikou, ktorý vyzerá celkom nádejne (mÖžeme
použiť aj WYSIWYG editovanie HTML súboru, ako je ukázané na následujúcom
obrázku).
Čo to spÖsobí?
Netscape Navigator aj Internet Explorer to zobrazí podobne ako v predošlom
prípade. Ale Opera má na to vlastný nelichotivý pohíad okrem toho, že sa
stratilo tučné písmo a podčiarknuté písmo, vidíme aj nesprávne zalomené riadky
a úplne nesprávne zobrazený očíslovaný zoznam, ktorý sa čiastočne premenil na
zoznam neočíslovaný:
Príčina všetkých týchto odlišností spočíva v HTML kóde, ktorý vygeneroval MS
Word 97:
<FONT FACE="Times New Roman" SIZE=2><P>normálne obyčajný text</P>
<B><P>tučné </B>obyčajný text</P>
</FONT><I><FONT SIZE=2><P>kurz&iacute;va </I></FONT><FONT FACE="Times New
Roman" SIZE=2>obyčajný text</P>
<U><P>podčiarknuté</U> obyčajný text</P>
<OL>
<LI>normálne obyčajný</FONT><FONT SIZE=2>text</LI>
</FONT><B><FONT FACE="Times New Roman" SIZE=2><LI>tučné </B>obyčajný text</LI>
</FONT><I><FONT SIZE=2><LI>kurz&iacute;va </I></FONT><FONT FACE="Times New
Roman" SIZE=2>obyčajný text</LI>
<U><LI>podčiarknuté</U> obyčajný text</LI></OL>
</FONT>
Je zábavné, že v uvedenom fragmente zdrojového kódu iba jeden reťazec znakov:
<P>normálne obyčajný text</P>
je v súlade so štandardom HTML. Akýkoívek iný reťazec znakov, obsahujúci okrem
bežného textu aj aspoň dva príkazy HTML, obsahuje minimálne jednu chybu.
Opravu tohto nesprávneho HTML-kódu a závery ponechávame čitateíom.

9 0967 / pe









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.