Elementul vă permite să încorporați alte pagini Web direct în pagina Web. Dar atunci când se utilizează iframe există unele probleme de securitate și design care nu au fost abordate în HTML 4.01. HTML5 aduce trei noi atribute acestui element pentru a ajuta la rezolvarea acestor probleme:
Atributul sandbox
Sandbox
atributul IFRAME
element este o caracteristică foarte utilă de securitate a iframe-urilor. Când îl plasați într-un IFRAME
element, instruiți agentul utilizator să nu permită caracteristici care ar putea genera un risc de securitate pentru site și pentru utilizatorii săi.
De exemplu:
sandbox = "" >
Spune browserului să interzică toate caracteristicile care ar putea fi un risc de securitate. În mod specific, pluginurile sunt nepermise. Formularele nu pot fi trimise. Scripturile nu vor rula și vor face legături în afara IFRAME
nu sunt permise. În cele din urmă, nu este permis accesul la cookie-uri, la locațiile de stocare locale și la alte pagini din același domeniu (origine).
Apoi, folosind Sandbox
valorile cuvintelor cheie, puteți re-activa anumite funcții. Aceste cuvinte cheie sunt:
permit forme
- depunerea sub formă de formularpermite-aceeași origine
-Sau scripturi pentru a accesa conținut cum ar fi cookie-urile din același domeniu de proveniențăpermite-script-uri
-Sau scripturi pentru a rula in aceastaIFRAME
permite-top-navigare
-Pentru aceastaIFRAME
link-uri și scripturi la_top
ţintă
Nu este o idee bună să setați atât permite-script-uri
și permite-aceeași origine
cuvinte cheie împreună pe același IFRAME
. Dacă faceți acest lucru, pagina încorporată poate apoi să fie complet eliminată Sandbox
atribut, negând orice beneficii de securitate.
Atributul srcdoc
srcdoc
atributul este un atribut care dă designerului Web mai mult control asupra iframe-urilor, precum și mai multă securitate. În loc să se conecteze la o pagină Web la o altă adresă URL, designerul web plasează codul HTML care trebuie afișat într-un IFRAME
în interiorul srcdoc
atribut.
La început, s-ar putea să vă gândiți: "Cum este altfel decât să plasați codul HTML în pagină?" Și într-un fel, nu este deloc diferit. Dar trebuie să țineți minte una dintre funcțiile IFRAME
element, care este de a păstra datele neîncrederii separate de restul site-ului.
Plasând HTML, care este creat de o sursă neîncrezătoare, cum ar fi un formular, într-un IFRAME
poți să "creezi" conținutul neautentificat și să îl afișezi în continuare pe pagină. Comentariile din blog sunt un exemplu. Majoritatea blogurilor au doar un număr limitat de comentatori HTML pe care comentatorii le pot folosi în comentariile lor. Dar prin plasarea acestor comentarii într-un sandboxed IFRAME
folosind srcdoc
atributul, comentariile pot fi mai robuste, protejând în același timp site-ul în ansamblu.
Securitate și iframe
Cele două atribute de mai sus oferă siguranță pentru dvs. IFRAME
elemente, dar nu sunt dovezi împotriva tuturor site-urilor rău intenționate. Dacă site-ul rău intenționat poate convinge un utilizator să acceseze direct conținutul ostil (cum ar fi tastând URL-ul în browser-ul acestuia), acesta poate fi încă atacat.
Dacă este posibil, este recomandat să setați conținutul aflat în cutia cu nisip IFRAME
dupa cum text / html sandboxed-
Tip MIME.
Atributul fără sudură
fără sudură
atributul este un atribut boolean care îi spune browserului să afișeze IFRAME
ca și cum ar fi fost o parte din documentul părinte. Dacă vrei tu IFRAME
pentru a afișa fără probleme, trebuie doar să includeți acest atribut în element:
fără sudură >
Dar făcând IFRAME
fără sudură este mai mult decât aspectul, este și modul în care pagina interacționează cu cadrul. De exemplu:
- Linkuri în
IFRAME
se va deschide în fereastra părinte, cu excepția cazului în careIFRAME
pagina are obiectivul_DE SINE
a stabilit. - CSS în
IFRAME
vor fi adăugate la cascada întregului document. - Elementul rădăcină al
IFRAME
pagina este considerată a fi copil alIFRAME
. - Lățimea și înălțimea
IFRAME
sunt setate într-o manieră similară cu modul în care ar fi stabilite alte elemente la nivel de bloc. - Atunci când documentul părinte este vizualizat de un instrument de redare a vorbirii ca un cititor de ecran,
IFRAME
ar fi citit fără a fi anunțat ca un document separat. - Toate scripturile din documentul părinte ar afecta
IFRAME
documente în același mod. De exemplu, în cazul în care un script afișează toate cadrele de pe pagină, legăturile dinIFRAME
ar fi listate, de asemenea.
Cu alte cuvinte, fără sudură
atributul face mult mai mult decât să eliminăm marginile din IFRAME
. Dacă aveți de gând să setați o IFRAME
pentru a fi perfect, trebuie să fiți foarte siguri de conținut, astfel încât să nu adăugați niciun risc de securitate site-ului dvs. prin încorporarea unui site rău intenționat.