IFRAME turinio, saugumo ir dizaino atributus
Šis elementas leidžia jums įterpti kitus tinklalapius tiesiai į jūsų tinklalapį. Tačiau naudojant "iframes" yra keletas saugumo ir dizaino klausimų, kurie nebuvo nagrinėjami HTML 4.01. HTML5 suteikia šiam elementui tris naujus atributus, padedančius spręsti šias problemas:
Sandbox Attribute
"IFRAME" elemento sandbox atributas yra labai naudinga "iframe" saugumo funkcija. Kai jūs įtraukiate jį į elementą IFRAME, jūs nurodote, kad naudotojo agentas neleidžia funkcijų, kurios gali kelti pavojų saugai svetainę ir jos vartotojams.
Pavyzdžiui:
Nurodo naršyklę uždrausti visas funkcijas, kurios gali kelti pavojų saugumui. Konkrečiai, papildiniai draudžiami. Blankai negali būti pateikti. Šablonai nebus rodomi, o saitai už IFRAME neleidžiami. Galiausiai prieiga prie slapukų, vietos saugyklos ir kitų to paties domeno (kilmės) puslapių neleidžiama.
Tada naudodami "sandbox" raktinių žodžių vertes galite iš naujo įjungti kai kurias funkcijas. Šie raktiniai žodžiai:
- leistinos formos - pateikimo forma
- allow-same-origin-allow scenarijus, kad galėtumėte pasiekti turinį, pvz., slapukus iš to paties kilmės domeno
- allow-scripts-paleidžiami scenarijai šiame IFRAME
- "allow-top-navigation" - leisti "IFRAME" nuorodas ir scenarijus į _top tikslą
Nebūtų gerai suplanuoti, kad leistini scenarijai ir leistini vieno kilometro raktiniai žodžiai kartu su tuo pačiu IFRAME. Jei tai padarysite, įterptasis puslapis gali visiškai pašalinti smėlio dėžės atributą, o tai reiškia, kad nėra jokių saugumo pranašumų.
Srcdoc atributas
Atributas srcdoc yra atributas, kuris suteikia interneto dizaineriui didesnį "iframe" valdymą ir didesnį saugumą. Vietoj to, kad susiejate su tinklalapiu kitame URL, Web dizaineris pateikia HTML, kuris turi būti rodomas IFRAME viduje srcdoc atributo.
Iš pradžių galite galvoti: "Kaip tai skiriasi nuo to, kaip teisingai įdėti HTML į puslapį?" Ir kai kuriais būdais tai nėra labai skirtinga.
Tačiau jūs turite nepamiršti vienos iš IFRAME elemento funkcijų, ty išlaikyti nepatikimus duomenis atskirai nuo likusios svetainės dalies.
Įdėdami HTML, sukurtą nepatikimu šaltiniu, pvz., Forma, į IFRAME, galite "sandbox" nustatyti nepatikimą turinį ir vis tiek jį rodyti puslapyje. Dienoraščio komentarai yra pavyzdys. Dauguma tinklaraščių turi tik ribotą skaičių HTML žymių, kurias komentatoriai gali naudoti savo pastabose. Tačiau, pateikdami šias pastabas smėlio dėžėje esančiame IFRAME naudodami atributą srcdoc, komentarai gali būti tvirtesni, vis tiek apsaugant visą svetainę.
Saugumas ir "Iframes"
Aukščiau išvardyti du atributai užtikrina jūsų IFRAME elementų saugumą, bet jie nėra įrodymai prieš visas kenksmingas svetaines. Jei kenksminga svetainė gali įtikinti naudotoją tiesiogiai pasiekti prieštaringą turinį (pvz., Įvesdami URL į naršyklę), vis tiek jie gali būti užpulti.
Jei įmanoma, geriausia nustatyti turinį, kuris yra smėlio dėžės IFRAME, kaip teksto / html-smėlio dėžės MIME tipą.
Vientisas savybes
Vientisas atributas yra loginis atributas, kuris nurodo naršyklei rodyti IFRAME, tarsi jis būtų pagrindinio dokumento dalis. Jei norite, kad jūsų "IFRAME" būtų rodomi vienodai, įtraukite šį elementą į šį atributą:
Bet, kad "IFRAME" būtų vientisas, tai yra ne tik išvaizda, bet ir tai, kaip puslapis sąveikauja su rėmeliu. Pavyzdžiui:
- Nuorodos į IFRAME bus atidarytos tėvų lange , nebent puslapyje IFRAME bus nustatytas tikslas _SELF.
- CSS, esantis IFRAME, bus pridėtas prie viso dokumento kaskados.
- Šakninis IFRAME puslapio elementas laikomas IFRAME vaiku.
- IFRAME plotis ir aukštis nustatomi taip, kaip būtų nustatyti kiti bloko lygio elementai .
- Kai pagrindinis dokumentas yra peržiūrimas kalbų perteikimo įrankiu, pvz., Ekrano skaitytuvu, IFRAME būtų perskaitytas, nepranešant apie tai kaip atskirą dokumentą.
- Visi pirminio dokumento scenarijai taip pat paveiktų dokumentą "IFRAME". Pavyzdžiui, jei scenarijus išvardija visus puslapio rėmus, taip pat bus nurodyti ir nuorodos IFRAME.
Kitaip tariant, vientisas atributas daro daug daugiau nei tiesiog pašalina sienas iš "IFRAME". Jei ketinate nustatyti, kad "IFRAME" būtų vientisas, turėtumėte būti labai tikri dėl turinio, kad nepridėtumėte jokios saugumo rizikos savo svetainei įterpdami piktybinę svetainę.