Elementet låter dig bädda in andra webbsidor direkt i din webbsida. Men när du använder iframes finns det några säkerhets- och designproblem som inte tagits upp i HTML 4.01. HTML5 ger tre nya attribut till det här elementet för att hjälpa till att hantera dessa problem:
Sandkassens attribut
De sandlåda attribut av IFRAME elementet är en mycket användbar säkerhetsfunktion för iframes. När du placerar den i en IFRAME element, instruerar du användaragenten att inte tillåta funktioner som kan medföra en säkerhetsrisk för webbplatsen och dess användare.
Till exempel:
sandlåda = "" >
Berätta att webbläsaren inte vill tillåta alla funktioner som kan vara en säkerhetsrisk. Speciellt är plugins inte tillåtna. Blanketter kan inte lämnas in. Skript kommer inte att köras och länkar utanför IFRAME är inte tillåten. Slutligen är inte tillgång till cookies, lokal lagring och andra sidor på samma domän (ursprung) tillåtna.
Sedan använder du sandlåda nyckelordsvärden, du kan aktivera några av funktionerna igen. Dessa sökord är:
tillåter-former-Allt formulär inlämningallow-samma ursprung-Alla skript för att komma åt innehåll som cookies från samma ursprungsdomeintillåter-scripts-Alla skript att springa i dettaIFRAMEallow-top-navigation-AllåIFRAMElänkar och skript till_toppmål
Det är inte en bra idé att ställa in båda tillåter-scripts och allow-samma ursprung nyckelord tillsammans på samma sätt IFRAME. Om du gör det kan den inbäddade sidan helt ta bort sandlåda attribut, negativa eventuella säkerhetsfördelar.
Srcdoc attributet
De srcdoc Attribut är ett attribut som ger webbdesignern mer kontroll över iframesna samt mer säkerhet. I stället för att länka till en webbsida på en annan webbadress placerar webbdesignern HTML som ska visas i en IFRAME inuti srcdoc attribut.
Först kan du tänka, "Hur är det här annorlunda än att sätta HTML direkt på sidan?" Och på något sätt är det inte hemskt annorlunda. Men du måste komma ihåg en av funktionerna hos IFRAME element, vilket är att hålla otillförlitliga data separerade från resten av webbplatsen.
Genom att placera HTML som skapas av en otillförlitlig källa, till exempel en blankett, till en IFRAME du kan "sandbox" det otillförlitliga innehållet och visa det fortfarande på sidan. Bloggkommentarer är ett exempel. De flesta bloggar har bara ett begränsat antal HTML-taggar som kommenterare kan använda i sina kommentarer. Men genom att placera dessa kommentarer i en sandlåda IFRAME använda srcdoc Attribut, kommentarerna kan vara mer robusta samtidigt skydda webbplatsen som helhet.
Säkerhet och iframes
Ovanstående två attribut ger säkerhet för din IFRAME element, men de är inte bevis på alla skadliga webbplatser. Om den skadliga webbplatsen kan övertyga en användare om att få tillgång till det fientliga innehållet direkt (t.ex. genom att skriva in webbadressen i webbläsaren) kan de fortfarande angripas.
Om möjligt är det bäst att ställa in innehållet i sandboxen IFRAME som den text / html-sandboxed MIME-typ.
Den sömlösa egenskapen
De sömlös Attribut är en booleskt attribut som säger att webbläsaren ska visa IFRAME som om det var en del av moderdokumentet. Om du vill ha din IFRAME att visa sömlöst, bara inkludera detta attribut i elementet:
sömlös >
Men att göra IFRAME sömlös är mer än bara utseendet, det är också hur sidan interagerar med ramen. Till exempel:
- Länkar i
IFRAMEkommer att öppnas i moderfönstret, om inteIFRAMEsidan har målet_SJÄLVuppsättning. - CSS i
IFRAMEkommer att läggas till i kaskaden av hela dokumentet. - Rotselementet i
IFRAMEsidan anses vara ett barn avIFRAME. - Bredden och höjden på
IFRAMEställs på samma sätt som hur andra blocknivåelement skulle ställas in. - När moderdokumentet ses av ett talåtergivningsverktyg som en skärmläsare,
IFRAMEskulle läsas utan att meddela det som ett separat dokument. - Eventuella skript på moderdokumentet skulle påverka
IFRAMEdokument på samma sätt. Till exempel, om ett skript listade alla ramar på sidan, länkarna iIFRAMEskulle listas också.
Med andra ord, sömlös Attributet gör mycket mer än bara bort gränserna från IFRAME. Om du ska ställa in en IFRAME För att vara sömlös bör du vara mycket säker på innehållet så att du inte lägger till någon säkerhetsrisk för din webbplats genom att bädda in en skadlig webbplats.




