Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Використання посилань у фреймах

У попередньому прикладі не використані гіперпосилання – між фреймами немає взаємозв’язку. Проте це не завжди зручно: факультетів може бути багато, а поділ сторінки на велику кількість фреймів призводить до розпорошування уваги відвідувача сайту. Тому розглянемо web-сторінку з навігаційною панеллю, яка розміщена у лівій меншій частині екрана, при цьому необхідна інформація відображатиметься у більшій правій частині так, як це показано на рис. 7.2.

Якщо заплановано використовувати певний фрейм для відображення інформації, яка змінюватиметься після вибору відвідувачами іншого посилання, то йому надають ім’я. Наприклад, <FRAME NAME="frame1". Web-сторінка з гіперпосиланнями, що виконуватиме роль навігаційної панелі, складається із сукупності тегів <А>...</А>. У них, крім адреси файлу, пов’язаного з гіперпосиланням, слід зазначити ім’я фрейму, в якому цей файл відображатиметься. Для цього використовують атрибут TARGET, значенням якого є ім’я відповідного фрейму. Наприклад:

<А HREF="2.html" TARGET="frame1"> Фінансово-економічний факультет </А>

Html-документ, який розмічається за допомогою фреймів наведений нижче:

<HTML>

<TITLE>Факультети</TITLE>

<FRAMESET COLS="20%,*">

<FRAME SRC="np.html">

<FRAME NAME="frame1">

</FRAMESET> </HTML>

Html-документ, який міститиме навігаційну панель описується наступним чином:

<HTML>

<TITLE>Перелік факультетів</TITLE>

<BODY>

<H2><A HREF="http://chtei-knteu.cv.ua/ua/fef/" TARGET="frame1">Фінансово-економічний факультет</A></H2>

<H2><A HREF="http://chtei-knteu.cv.ua/ua/oef/" TARGET="frame1">Обліково-економічний факультет</A></H2>

<H2><A HREF="http://chtei-knteu.cv.ua/ua/fmtrg/" TARGET="frame1">Факультет менеджменту, туризму та ресторанного господарства</A> </H2>

<H2><A HREF="http://chtei-knteu.cv.ua/ua/ftpme/" TARGET="frame1"> Факультет торговельного підприємництва та міжнародної економіки</A></H2>

</BODY>

</HTML>

Pис. 7.2. Вікно браузера після того,
як відвідувач скористався гіперпосиланням

 

Фрейми на web-сторінках – це зручний спосіб структурування web-сайту. Однак, слід пам’ятати про те, що web-сторінки з фреймами потребують завантаження кількох документів, і тому для їх відтворення браузеру необхідно більше часу, ніж для відтворення web-сторінки без фреймів. Окрім цього, екран із кількома web-сторінками розпорошує увагу користувача. Іноді web-документи, розміщені на одному екрані, мають різний стиль оформлення, що негативно впливає на загальне враження від такої сторінки.

 

3. Помилки, що виникають на web-сторінці. Поняття валідації

Отже, було створено декілька html-сторінок, і вони, здається, виводяться нормально, але є декілька не зовсім правильних речей. Як краще всього почати пошук того, що неправильно, і гарантувати, що ці сторінки (і написані в майбутньому сторінки) виводитимуться правильно в різних браузерах, без яких-небудь помилок? Відповіддю є валідація – перевірка на відповідність правилам. Існує багато доступних засобів на сайті W3C і в інших місцях, які дозволяють виконати валідацію коду сайту.

Найбільш відомими валідаторами є наступні:

· W3C MarkUp Validator (http://validator.w3.org/). Валідатор знаходить використовуваний в документі doctype (X) HTML, що перевіряється, і переглядає потім весь документ, вказуючи місця, де код HTML не відповідає використовуваному doctype (тобто, де є помилки коду HTML).

· W3C Link Checker (http://validator.w3.org/checklink). Валідатор переглядає документ, представлений для перевірки, і перевіряє всі посилання в документі, щоб гарантувати відсутність непрацюючих посилань (в яких значення HREF вказують на неіснуючі ресурси).

· W3C CSS Validator (http://jigsaw.w3.org/css-validator/). Валідатор переглядає документ CSS (або HTML/CSS) і перевіряє, що CSS відповідає специфікаціям CSS.

Розглянемо перший з цих інструментів, щоб показати, як його використовувати, і як інтерпретувати типові результати, які повертає валідатор.

У програмуванні комп’ютерів існує, взагалі кажучи, два види проблем коду:

· синтаксичні помилки – коли помилки в записі коду не дозволяють комп’ютеру правильно виконати або скомпілювати програму;

· помилки програмування (або логіки) – коли код не повністю відображає задум програміста.

У більшості мов програмування помилки першого роду досить легко виявити – програма просто відмовляється виконуватися або компілюватися, поки помилка не буде виправлена. Це робить пошук і виправлення таких помилок значно простіше в ситуаціях «чому вона не робить те, що я хочу».

Html не є мовою програмування. Синтаксичні помилки на web-сторінці зазвичай не ведуть до того, що web-браузер відмовляється відкрити сторінку.

Перший браузер Web, WorldWideWeb (http://www.w3.org/People/Berners-Lee/WorldWideWeb.html) написаний Тімом Бернерс-Лі, був також редактором, який дозволяв людям створювати web-сторінки не вивчаючи спочатку HTML. Цей редактор створював невірний HTML. Це можна було б виправити, але був створений важливий прецедент, який існує у всіх браузерах Web до сьогоднішнього дня, – суть якого в тому, що надання людям доступу до контенту важливіше, ніж повідомлення про помилки людям, які їх не розуміють або не можуть їх виправити.

Хоча браузери Web сприйматимуть погані (недійсні) web-сторінки і робитимуть максимум для візуалізації коду, роблячи найкращі припущення про намір автора, проте, можна перевірити, чи був HTML написаний правильно. Цей процес називається «валідацією» HTML. Програма валідації порівнює код HTML на сторінці Web з правилами супроводжуючого DOCTYPE і повідомляє, які правила і де були порушені.

Існує поширена думка серед деяких web-розробників, що якщо web-сторінка виглядає в браузерах добре, то не має значення, що її валідація не була виконана. Вони називають валідацію ідеальною метою.

Існує деяка доля істини у такому підході, специфікація HTML не є досконалою, і зараз істотно застаріла. Деякі речі, які, можливо, правильні (такі як початок впорядкованого списку в крапці, відмінній від 1) є недійсними в HTML. Існує дві важливі причини для валідації коду HTML при його створенні:

· людина не досконала, як і створюваний нею код – усі роблять помилки, і web-сторінки будуть вищої якості (тобто, працювати більш погоджено), якщо виполоти всі помилки;

· браузери змінюються. У майбутньому браузери, швидше за все, будуть менш поблажливі при синтаксичному аналізі недійсного коду.

Валідація є системою раннього попередження про існування помилок на сторінках, які можуть проявляти себе всіляким важко передбачуваний чином. Коли браузер зустрічає недійсний код HTML, він вимушений робити обґрунтоване припущення про те, що збирався робити розробник – і різні браузери можуть приходити до різних відповідей.

 

4. Інтерпретація html-коду різними браузерами

Дійсний код HTML є лише контрактом, який укладається з виробниками браузерів. Специфікація HTML говорить, як слід написати сторінку, і як вони повинні інтерпретувати створений документ. Останнім часом відповідність браузерів стандартам досягла того рівня, на якому всі основні браузери повинні інтерпретувати дійсний код однаково. Це майже завжди торкається в будь-якому разі HTML, тоді як інші стандарти мають трохи більше відмінностей у підтримці в різних браузерах.

Але що відбудеться, якщо передати браузеру недійсний (невалідний) код? Відповідь полягає в тому, що в браузері починає працювати обробка помилок, аби визначити, що робити з кодом. Браузер, як правило, поступає таким чином: «гаразд, цей код недійсний, як можна представити цю сторінку кінцевому користувачеві? Давайте заповнимо те, що не дістає наступним чином!». Тобто, якщо на сторінці є декілька помилок, то браузер заповнить замість розробника те, що не вистачає. Проте така ситуація не зовсім добра, оскільки кожен браузер робить це по-різному. Наприклад:

<P><STRONG>Цей текст має бути жирним</P>

<P> Повинен цей текст бути жирним? Як це зробити?</P>

<P><A HREF="#"></STRONG> Цей текст має бути посиланням </P>

<P> Повинен цей текст бути посиланням? Що зробити, щоб це було дійсністю?</P>

Помилки полягають у тому, що елемент STRONG неправильно вкладений в декілька блокових елементів, а елемент гіперпосилання не закритий. Коли відбудеться спроба вивести цей код у різних браузерах, вони інтерпретуватимуть його абсолютно по різному:

· Opera зробить подальші елементи нащадками елементу STRONG;

· Firefox додасть додаткові елементи STRONG між параграфами, які не присутні в розмітці;

· Internet Explorer помістить текст «Цей текст має бути посиланням» ззовні тегу, який створює гіперпосилання.

Жодна з поведінок різних браузерів не є неправильною; всі вони намагаються заповнити пропуски неправильного коду. Головний висновок полягає в тому, що треба прагнути уникати на сторінці недійсної розмітки, якщо це можливо.

 

<== предыдущая лекция | следующая лекция ==>
Список рекомендованих джерел. 1. Html-документи, які містять фрейми | Quirksmode
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 720; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.02 сек.