Списание за дизайн, визуална култура и Новата медия.
26 Януари 2001 - първият рожден ден на XHTML1.0 като препоръка на World Wide Web Consortium. Но XHTML тепърва трябва да проходи, да се усмихне, да се разплаче достатъчно силно, че да привлече вниманието на повечетo уеб дизайнери.
Проблемът с XHTML 1.0 не е въпрос на сила или на важност. XHTML е едновременно силен и важен - при това не само за снобите, които са влюбени в кода на страниците или хардкор разработчиците. Не е и в това, че XHTML се учи прекалено трудно. Всъщност се учи доста лесно. И проблемът не е в това, че XHTML 1.0 не се показва от сегашните или предишните браузъри. Когато е написан в предвид съвместимостта с различни браузъри, също както и HTML, той работи навсякъде.
Проблемът е в това, че XHTML просто бива разбиран погрешно.
Защо съществува това погрешно рабиране е малко по-сложно за обяснение. В основни линии, XHTML поражда страх у някои, защото е XML - а XML звучи доста по-абстрактно отколкото HTML някога е звучал. За опитния дизайнер, който има по-задълбочени познания по HTML ще е още по-трудно да намери логично обяснение на XHTML 1.0. В смисъл, кой в края на краищата иска да дешифрира документите на W3C? Обикновено завъртяни, прекалено детайлни и определено неприятелски настроени към потребителя, спецификациите на W3C не са писани за творческите персони, хората които използват повече дясното полукълбо на мозъка си.
И накрая - софтуерните компании, които дават на дизайнерите графичните редактори и HTML редакторите, в по-голямата си част пренебрегват препоръките на W3C и въобще не желаят да ги включат в своите продукти. И така дизайнер, който иска да се съсредоточи върху дизайна вместо върху кода ще трябва да се надява, че производителят на софтуера се придържа към последните препоръки.
В резултат, заетият дизайнер - ако има щастието да се освободи няколко дни, за да седне и да разучи доколко софтуерът му поддържа препоръките и дали въобще има смисъл да се използва XHTML 1.0 - трябва да разнищи толкова много неща. Трудна задача.
Все едно да се грижиш за едногодишно детенце.
Първо, какво по дяволите е XHTML?
Важно е в началото да разберем какво е XHTML. За да научим, нека първо хвърлим
поглед назад - към историята на HTML. За някои читатели тази информация
ще е стара. Но тя е в ядрото на XHTML, затова стойте близо до мен.
HTML се появи от Standard Generalized Markup Language, SGML. SGML е т.нар. "мета" език. SGML в общи линии е сборник от езикови правила, които после авторите използват, за да създават свои собствени езици. HTML е един от тези езици - дете, ако щете, на своя мета-родител SGML.
Друго дете на SGML е XML, Extensible Markup Language. Инетересно е това, че XML също е мета-език. Това означава, че той също може да бъде използван за създаване на други езици. Има нещо, което трябва да се разбере за SGML и то е, че той е доста сложен мета-език, много детаилен. XML се появи като праволинеен мета-език, който е подходящ за създаване на Мрежови езици, който могат да се настройват и изменят според нуждите на различни приложения. Примери за XML приложения са Scalable Vector Graphics (SVG), Synchronized Multimedia Integration Language (SMIL) и Wireless Markup Language (WML).
XHTML е преформулирането на HTML като XML приложение. С други думи, XHTML изглежда като HTML през очите на XML. Правилата и методите на XML се прилагат към HTML, вливайки му отново силата на синтаксиса, която бе изгубил при бързата се еволюция от език за текстови документи към де факто език на визуалния дизайн.
XHTML 1.0 е първата версия на XHTML, който е доста строг програмен език. Неговите правила са много праволинейни, а всъщност XHTML не е чак толкова разтеглив - не можете да пишете свои собстени правила за това как да се държи този език. Трябва да следвате правилата. Освен това XHTML 1.0 приема и някой концепции въведени за пръв път в HTML 4.0 - структурата на документите става по-важна - независимо дали става въпрос за браузрите или графичните редактори.
Да разровим по-дълбоко
В ранна възраст HTML беше лесен. Той съществуваше само, за да удостовери,
че даден документ е HTML документ и освен това даваше възможност за съвсем
елементарно оформяне - параграфи, нов ред, заглавия. Дизайнериуте трябва
да помнят, че Мрежата пъвроначално е била единствено текстова среда! HTML
не е създаден, за да се оформя външния вид. Напротив, неговата цел е да
структурира данните.
После се появиха графичните браузъри, които промениха тази текстова среда от среда, изградена от текстови документи, в среда, обещаваща все по-големи възможности за визуалния оформление. HTML, а и самите браузъри, бяха разтеглени в невъзможни пропорции, за да успят да задоволят неимоверно нарастващите нужди за визуално представяне на информацията и интерактивност. Естествено дизайнерите бяха загрижени повече да създават визуално богат и естетически привлекателен дизайн.
Да се опитваш да накараш HTML да направи това, което искаш, е доста отегчително нали? Няма начин да се осигури постоянство на оформлението. Няма начин да се контролират празните пространства. Няма стабилен начин за управление на шрифтовете. Кошмар за дизайнера - породен от самия факт, че Мрежата никога не е била замисляна като визуална среда. Но тя се превърна в такава и от тогава да се оправиш в тази бъркотия винаги е било предизвикателство.
Трябва да признаем, че външният вид винаги е бил пренебрегван от хората, които създават програмни езици. CSS дава доста повече власт в ръцете на дизайнерите, но всички ние знаем, че това е нещо, от което косите побеляват. За дизайнерите истинския проблем се състои в това, че имат нужда от по-добри средства за дизайн - не по-добра технология.
тъжната истина, от която боли
Въпросът е в това, че XHTML не се отнася до външния вид. XHTML просто преразглежда
концепцията за още по-строги правила при съставянето на кода на документите.
Използването на XHTML ще ви помогне да заздравите структурата и синтаксиса
на своя код. Защо тогава това е важно? Е, ако се има предвид посоката, в
която се развива технологията, това има дълбок смислъл. Бъдещият информационен
дизайнер (дизайнер на информацията) ще трябва да се съобразява с множество
различни устройства за достъп до Интернет. Сърфирането из Мрежата с браузър
далеч не е единствената възможност, която имаме. Документите ще трябва да
изглеждат добре в редица различни среди - пейджъри, PDA (Personal Data Assistant),
мобилни телефони и др.
XHTML позволява на всеки, който създава документи - бил той дизайнер или разработчик - да направи такъв документ, който ще бъде достъпен в различни условия. Освен това XHTML ви позволява да използвате Extensible Style Language, XSL, при преобразуването на документите. Използвайки технология за оформяне на стиловете основана на XML, вие всъщност можете да трансформирате документ от един вид в друг вид - примерно от HTML в PDF документ. Освен това XHTML помага на дизайнерите, които не са запознати с програмирането или по-сложните прграмни езици, да вникнат в света на езиците с разширени възможности. Да използвате XHTML означава да използвате речник, с който вече сте запознати - HTML таговете и атрибутите, с които работите всеки ден. Но, вече ги използвате в контекста на XML, а това означава, че когато се наложи да преминете към други XML технологии ще ви бъде далеч по-лесно. Ако научите XHTML, ще ви бъде много по-лесно да научите SMIL и SVG.
А XHTML - съвместно с новопоявилите се технологии, ни дава възможност да създадем профил на устройството за достъп и съответно да продоставим уместния за този профил документ. И това става на сървъра, а не чрез JavaScript, което гарантира работа с различни видове устройства за интернет достъп. Всико това е неимоверно мощно нещо (бел.пр. обърнете внимание, че тази страница има отделна версия за печат, осигурена единствено чрез XHTML и CSS; IE/NS: File -> Print preview)!
Но какво значение има всичко това за дизайнер, чиято единствена грижа е дизайнът за Мрежата? Тъжната истина е, че няма особено значение.
И тук лежи истинският въпрос, който трябва да си зададат дизайнерите планиращи да използват XHTML. Търсите ли средства за контрол върху външния вид? Или търсите възможност да представите информцията си в по-широк кръг устройства - например мобилни телефони? Това е основното. Ако нямате интерес извън представянето си в Мрежата, то XHTML предлага само няколко преимущества, а в някои случаи може и да ви навреди.
Кога с XHTML, кога с измама
Задължително е дизайнерите да гледат на XHTML 1.0 като преходна технология.
Той е тук сега, но неговите цели са по-скоро да укрепва наличните технологии
отколкото да представя нещо ново. По-новите версии на XHTML и другите технологии
ще направят това. Затова всъщност, независимо от факта, че това е последната
препоръка на W3C, това може и да не е най-добрият ви избор.
Кога да използвате XHTML 1.0? Обърнете внимание на следните въпроси:
Виждате ли нуждата вашата работа да бъде достъпна чрез различни устройства сега или в бъдеще?
Искате ли образователно средство, което ще помогне на вас и колегите ви да услесните прехода от HTML към XML?
Искате ли да внесете допълнителна сила в синтаксиса на документите си въпреки, че ще направите компромис с някои аспекти на външния вид?
Спазвате ли препоръките на W3C, за да си осигурите поддръжка от браузерите и софтуера за уеб дизайн?
Ако на някой от тези въпроси (или комбинация от тях) отговорът е "да", то трябва да обърнете сериозно внимание на XHTML 1.0.
Ако "да", то XHTML 1.0
Ако искате да разгледате XHTML 1.0 по-отблизо, започнете с това каква информация
ще има всеки от вашата фирма. Ако работите самостоятелно ще трябва доста
да се задълбочите в изучаването на XHTML. Ако сте арт директор или дизайнер,
работещ в екип - вероятно това е нещо, което можете да препоръчате на разработчиците
в екипа. Има някои отлични ресурси за XHTML, които са делеч по-разбираеми
от документите на W3C - вижте ги в края на статията.
Преди да кажете "да" на XHTML 1.0 трябва да имате на ум няколко неща:
Внимавайте с ограниченията пред оформянето на външния вид. Дори и да
не е задължително всички XHTML документи да разчитат на CSS за външния
си вид, някои тагове и атрибути бяха премахнати от спецификацията. Идеалният
XHTML документ разчита изцяло на CSS за външния вид. Но всички ние знаем,
че независимо от обещанията CSS далеч не е идеален или поне поддръжката
му от браузърите не е. Перфектен пример за това е ако се опитвате да
определяте полета (margins), бордюри (borders) и уплътнения (padding).
Да речем, че досега сте използвали topmargin="x"
атрибута
в
topmargin
вече не присъства в спецификацията, а от друга страна поддръжката на
CSS е непостоянна. В резултат, губите един ефективен, безотказен метод
за контрол върху полетата.
Вашите сайтове използват ли код от други източници? Например, научих, че WebReview.com и рекламните му сървъри добавят към страница свой код. Този код е зле оформен и когато бъде добавен към нашите нови секси XHTML документи ги прави невалидни. Страниците показват ли се? Абсолютно. Но валидни ли са? Не, не са. Всеки код от външни източници, който се добавя към вашите документи трябва да бъде пренаписан така, че да отговаря на правилата на XHTML. Ако този код се добавя динамично, ще ви бъде доста трудно да убедите организациите, които го правят, да го променят - това отнема време, следователно - пари!
Вземето в предвид обсега на вашия проект. Пренастройването на големи сайтове към изискванията на XHTML е решение, което зависи изцяло от вас. В края на краищата можете да се сблсъкате с проблеми, точно каквито аз имах, от сорта на това, че кодът на системата за ротация на банерите е несъвместим с XHTML и това дава отражение върху целия сайт. Когато имате само няколко страници е едно, но когато имаш 10 000 страници е влудяващо! И още нещо - веднъж направили избора да използвате XHTML ще трябва да имате в предвид, че някои документи ще имат нужда от допълнителни технологии, дизайн или подновяване, за да могат наситина да достигнат по-широка аудитория чрез различните устройства за Интернет достъп.
Това съвсем не е изчерпателен списък, но е кратък списък опсиващ най-високите стени, които ми се наложи да прескачам, когато реших да изпозлвам XHTML 1.0 на практика. Надявам се, че тези точки ще ви помогнат да избегнете подобни капани.
Ако "не", то мамете изискано, моля
Незавидимо от факта, че тази статия има за цел да помогне на дизайнерите,
един от изводите от нея е, че избираме технология - независмо дали основната
ни работа е да вземаме решения как ще изглеждат нещата, а не как ще работят.
Програмните езици за Мрежата са свързани с дизайна по рождение. Без правилно
да разбира кода, дизайнерът е в губеща позиция.
Част от предизвикателството пред дизанерите е това, че те не обръщат внимание на препоръките въобще, камо ли какво става с XHTML в частност. Дали защото имаме прекалено малко време за учене, дали защото е трудно, повечето дизайнери дори не използват HTML по начина определен от W3C и затова са доста по-слабо подготвени да използват XHTML.
Нека се отпуснем за секунда и видим какво са стандартите. Целата на един стандарт е да създаде условия за постоянство в прилагането на дадена технология. В идеалния свят, това би означавало, че всички производители на браузъри и софтуер за уеб дизайн ще се придържат към определна технология с еднакво постоянство. Съществуват най-различни видове технически стандарти. А ние говорим за "стандартите" на W3C.
Обаче употребата на тази дума (стандарти) е погрешна. Така е, защото HTML и XHTML са зададени от W3C не като стандарти. Те са препоръки. Хората и компаниите, които работят в W3C са интелигентни и имат представа за нещата. Те се стремят да създават смислени препоръки, чрез които се създават, отглеждат и напътстват уеб технологиите, които използваме. Но те не са ми шеф. Или ваш шеф. Не сте длъжни да спазвате препоръките - и всъщност, повечето хора не го правят!
Но спазването на препоръките има някои преимущества. Ако решите да не използвате XHTML 1.0, съмянвам се, че ще се придържате към преопръките на W3C за HTML 4.0 (по-специално HTML 4.01, който е последната версия на HTML).
Ако сами не правим нещо, не можам да караме другите да го правят. След като не спазваме препоръките не можем да изискваме от компаниите прозиводителки на браузъри или софтуер за уеб дизайн да се придържат към тях. И това може да се окаже вредно за нас като дизайнери, понеже губим постоянството. Това може да се види при поддръжката на CSS - още по ясно демонстрирано от Netscape, които се отказаха от своите layer във версията 6.0 насвоя браузър, за да спазят препоръките на W3C. Този въпрос е създава проблеми на дизайнерите, но поне ще знаем, че всички започваме от едно и също място и е се развиваме от тук нататък. Няма да се налага да си скубем косите, защото някой браузър поддържа или не поддържа нашия дизайн. Знаем, че те или ще го поддържат, или няма, но няма да има значение за нас.
А бъдещето?
Ако си мислите, че следването на препоръки като HTML 4.0 или XHTML 1.0 е
излишна мъка, то бъдещите препоръки ще ви оставят да търсите магазин за
зелен хайвер. Една от тях е XHTML Modularization.
Сравнена с XHTML 1.0, XHTML Modularization е безкрано абстрактна препоръка - но много пъти по-мощна, давайки повече контрол в ръцете на онзи, който се стреми да научи кои методи за писане на кода на документите работят най-добре в конкретни ситуации. Идята на модуалризацията се състои в това, че дава огромни възможности за контрол върху структурата на един документ. Всички компоненти на програмния код: изображения, таблици, форматиране на текст и т.н. са отделени в отделни модули. След това може да се напише собствена дефиниция за вида на документа (document type definition) DTD, позоваваща се единствено на нужните модули. И така, ако ви трябват само текст и изображния за документите, използвате само техните модули. В резултат кодът е съвсем прост - което има голямо знаение, когато структурирате информацията за, примерно, безжично устройство за Интернет достъп. Но ако трябва да създадете сложно оформление на страницата, използвайки rollover скриптове и т.н. - всичко това се оказва почти безполезно.
В крайна сметка XHTML не е нещо, което дизайнерите трябва да прегърнат сърдечно ако нямат нужда от него. Аз лично се придържам към препоръките на W3C - и то до такава степен, че съм посветила последните няколко години от живота си да обучавм хората какво е XHTML и ползата от него. Но аз работя и живея в истинския свят и затова не мога да си позволя да съм само проповедник. Трябва да се вгледам в реалните факти и е ясно, че XHTML никога не е правен за дизайнерите. Тъжната истина е, че HTML също никога не е бил предназначен за дизайнерите. Тук хардкор привържениеците на позлваемостта да си запушат ушите, защото единствената упсешна технология, създадена с мисъл преди всичко за дизайнерите е Flash. SVG и SMIL едва сега се зараждат като бъдещи възможности, но подръжката на всяка една от тях е ограничена засега и затова те не са истински конкуренти.
Но разбира се нашето бъдеще като уеб дизайнери изисква да изучаваме и понякога да прегръщаме новите технологии. Независимо дали ще решите, че XHTML е нещо, от което ще имате ползва при постигането на целите си или пък не, си е в края на краищата съвсем лично решение. Но ако се стремите да учите новите неща, да поддържате последните препоръки на W3C, да вземата решения основани на информираността ви относно това, кои технологи трябва да предпочетете, в крайна сметка това дава сили на всички нас. А това е цел, която си заслужава и то много.
Статии
"Marking Up
Documents in XHTML"
Полезен урок от HTML Writer's Guild.
XHTML 1.0: Marking up a new dawn "Getting familiar--and
getting started--with the new standard" от Моли Холзшлаг
Подробен урок, който ще ви помогне да започнете да създавате XHTML докумнти.
"All About XHTML"
от Моли Холзшлаг
Един XHTML урок предназначен за хора, които имат интерес в създаването на
страници за безжични устройства.
Software
BBEdit сега поддържа XHTML, http://www.barebones.com/
Pagespinner също поддържа XHTML, http://www.optima-system.com/pagespinner/
Mozquito Factory 1.5 е създаден специално за XHTML, http://www.mozquito.com/
Mailing List
XHTML-L е отличнен мейлинг лист основан от Simon St. Laurent. За участници
с различен опит.
http://www.egroups.com/group/XHTML-L
Статия в категория Код
Ключови думи: xhtml, стандарти
Източник: To Use or Not to Use: An XHTML Roadmap for Designers
Digital Web Magazine, http://www.digital-web.com
Все още не можете да намерите онова, което търсите? Защо не пробвате с това малко поленце отдолу (подсказки: въвеждайте повече думи; пишете на кирилица; използвайте по-конкретни понятия.)