Содржина, безбедност и дизајн атрибути за IFRAME
Овој елемент ви овозможува да вметнете други веб-страници директно на вашата веб-страница. Но, кога се користи iframes постојат некои безбедносни и дизајн прашања кои не беа опфатени во HTML 4.01. HTML5 носи три нови атрибути на овој елемент, за да помогне во решавањето на овие проблеми:
Атрибутот на песокот
Атрибутот на sandbox на елементот IFRAME е многу корисна сигурносна карактеристика на iframes. Кога ќе го ставите во елемент IFRAME, ќе му дадете упатство на корисничкиот агент за забрана за функции кои можат да предизвикаат безбедносен ризик за веб-локацијата и неговите корисници.
На пример:
Му кажува на прелистувачот да не дозволи сите карактеристики кои можат да бидат безбедносен ризик. Поточно, приклучоците се отфрлени. Формите не можат да се поднесат. Скриптите нема да се извршуваат и врските надвор од IFRAME не се дозволени. И на крај, не се дозволени пристап до колачиња, локални складишта и други страници на ист домен (потекло).
Потоа, користејќи ги вредностите на клучни зборови во sandbox, можете повторно да ги вклучите некои од функциите. Овие клучни зборови се:
- дозволи-форми -поднесување на формуларот
- дозволете-скрипти со исто потекло да пристапат до содржина како што се колачиња од истиот домен на потекло
- дозволи-скрипти - скрипти кои треба да се извршат во овој IFRAME
- дозволи-врвот-навигација -дај ги IFRAME-те линковите и скриптите до крајната цел
Не е добра идеја да ги поставите двете дозволи-скрипти и да дозволите-клучни зборови со исто потекло заедно на ист IFRAME. Ако го направите ова, вградената страница може целосно да го отстрани атрибутот sandbox, со тоа што ги негира сите безбедносни бенефиции.
Атрибутот srcdoc
Атрибутот srcdoc е атрибут кој му дава на веб дизајнерот поголема контрола над iframes, како и поголема безбедност. Наместо да се поврзува со веб-страница со различен URL-то, веб-дизајнерот го става HTML-от што ќе се прикаже во IFRAME во внатрешноста на srcdoc атрибутот.
Најпрво може да размислите: "Како е ова поинакво од ставањето на HTML на страницата?" И на некој начин, тоа не е ужасно поинакво.
Но, мора да имате на ум една од функциите на елементот IFRAME, што е да ги задржите недоверливите податоци одвоени од остатокот на страницата.
Со поставување на HTML кој е создаден од недоверлив извор, како што е форма, во IFRAME можете да ја "изолирате" недоверливата содржина и да го прикажете на страната. Коментарите на блог се пример. Повеќето блогови имаат само ограничен број HTML тагови кои коментаторите можат да ги користат во своите коментари. Но, со ставање на овие коментари во ИФРАМЕ со sandboxed, користејќи го атрибутот srcdoc, коментарите можат да бидат поцврсти додека сеуште го штитат сајтот како целина.
Безбедност и Iframe
Горенаведените два атрибути обезбедуваат безбедност за вашите IFRAME елементи, но тие не се доказ против сите малициозни сајтови. Ако злонамерен сајт може да го убеди корисникот директно да пристапи до непријателските содржини (како на пример со внесување на URL-то во нивниот прелистувач), сепак може да бидат нападнати.
Ако е можно најдобро е да ја поставите содржината што е во sandboxed IFRAME како MIME-тип на text / html-sandboxed.
Бесплатен атрибут
Бесплатен атрибут е булова атрибут кој му кажува на прелистувачот да го прикаже IFRAME како да е дел од родителскиот документ. Ако сакате вашиот IFRAME да се прикаже беспрекорно, само вклучи го овој атрибут во елементот:
Но, правењето на IFRAME беспрекорно е повеќе од само изглед, исто така е и начинот на кој страницата комуницира со рамката. На пример:
- Линкот во IFRAME ќе се отвори во родителскиот прозорец , освен ако страницата IFRAME нема цел _SELF.
- CSS во IFRAME ќе биде додаден во каскадата на целиот документ.
- Коренскиот елемент на страницата IFRAME се смета за дете на IFRAME.
- Ширината и висината на IFRAME се поставени на сличен начин како ќе бидат поставени други блок-ниво елементи .
- Кога родителскиот документ се гледа со алатка за рендерирање говор како читач на екран, IFRAME ќе се чита без да го објави како посебен документ.
- Сите скрипти на родителскиот документ ќе влијаат на документот IFRAME на ист начин. На пример, ако сценариото ги наброи сите рамки на страницата, линковите во IFRAME ќе бидат исто така наведени.
Со други зборови, лесниот атрибут го прави многу повеќе од само да ги отстрани границите од IFRAME. Ако сакате да поставите IFRAME да биде беспрекорно, треба да бидете многу сигурни во содржината за да не додадете ризик за безбедноста на вашиот веб-сајт со вградување на злонамерен сајт.