Prvek umožňuje vkládat jiné webové stránky přímo do webové stránky. Při použití rámců však existují některé problémy týkající se zabezpečení a návrhu, které nebyly řešeny v HTML 4.01. HTML5 přináší tomuto prvku tři nové atributy, které pomáhají řešit tyto obavy:
Atribut karantény
The pískoviště atribut IFRAME element je velmi užitečná bezpečnostní funkce iframe. Když ji umístíte do IFRAME , instruujete uživatele agentu, aby zakázal funkce, které by mohly způsobit bezpečnostní riziko pro web a uživatele.
Například:
sandbox = "" >
Informuje prohlížeč, aby zakázal všechny funkce, které by mohly představovat bezpečnostní riziko. Konkrétně jsou pluginy zakázány. Formuláře nelze odeslat. Scripts nebudou spouštět a odkazy mimo IFRAME nejsou povoleny. Konečně není povolen přístup k souborům cookie, místnímu úložišti a dalším stránkám ve stejné doméně (původu).
Potom pomocí příkazu pískoviště hodnoty klíčových slov, můžete některé funkce znovu aktivovat. Tato klíčová slova jsou:
povolených formulářů-Příjemce podánípovolit stejný původ-Allow skripty pro přístup k obsahu, jako jsou soubory cookie ze stejné domény původupovolit-skripty-Allow skripty pro spuštění v tomtoIFRAMEallow-top-navigation-DechovatIFRAMEodkazy a skripty na_hornícílová
Není vhodné nastavit obojí povolit-skripty a povolit stejný původ klíčová slova spolu na stejném IFRAME. Pokud tak učiníte, vložená stránka může zcela odstranit pískoviště atribut, čímž se znemožní přínos pro zabezpečení.
Atribut srcdoc
The srcdoc atribut je atribut, který dává webovému návrháři větší kontrolu nad prvky iframe, stejně jako větší bezpečnost. Namísto propojení s webovou stránkou na jinou adresu URL webový návrhář umístí HTML, který má být zobrazen IFRAME uvnitř srcdoc atribut.
Nejprve si můžete přemýšlet: "Jak se to liší od vložení HTML přímo na stránku?" A v některých ohledech to není strašně jiné. Ale musíte mít na paměti jednu z funkcí IFRAME prvkem, kterým je udržet nedůvěryhodné údaje odděleně od ostatních stránek.
Umístěním kódu HTML, který je vytvořen nedůvěryhodným zdrojem, například formulářem, do souboru IFRAME můžete "sandbox" nedůvěryhodný obsah a stále ho zobrazovat na stránce. Komentáře k blogu jsou příkladem. Většina blogů má jen omezený počet komentářů HTML, které mohou komentátoři použít ve svých komentářích. Ale uvedením těchto poznámek do sandboxed IFRAME za použití srcdoc atribut, komentáře mohou být robustnější a zároveň chrání místo jako celek.
Zabezpečení a rámcové rámečky
Výše uvedené dva atributy poskytují bezpečnost pro vaše IFRAME prvky, ale nejsou důkazy proti všem škodlivým webům. Pokud škodlivý web může přesvědčit uživatele k přímému přístupu k nepřátelskému obsahu (například zadáním adresy URL do svého prohlížeče), mohou být stále napadeni.
Pokud je to možné, je nejlepší nastavit obsah, který je v karanténě IFRAME jako text / html-sandboxed Typ MIME.
Bezproblémový atribut
The bezešvý atribut je booleovský atribut, který řekne prohlížeči, aby zobrazil IFRAME jako by byla součástí rodičovského dokumentu. Pokud chcete vaše IFRAME k zobrazení hladce, stačí přidat tento atribut do prvku:
bezešvý >
Ale dělat IFRAME bezproblémová je více než jen vzhled, je to také, jak stránka interaguje s rámečkem. Například:
- Odkazy v
IFRAMEse otevře v nadřazeném okně, pokud neníIFRAMEmá cíl_JÁsoubor. - CSS v
IFRAMEdo kaskády celého dokumentu. - Kořenový prvek
IFRAMEstránka je považována za dítěIFRAME. - Šířka a výška
IFRAMEjsou nastaveny podobným způsobem, jakým by byly nastaveny další prvky na úrovni bloku. - Když je nadřazený dokument zobrazen nástrojem pro vykreslování řeči, jako je čtečka obrazovky,
IFRAMEby bylo čteno, aniž by bylo oznamováno jako samostatný dokument. - Všechny skripty v nadřazeném dokumentu by měly vliv na
IFRAMEdokument stejným způsobem. Například, pokud skript uvedl všechny rámce na stránce, odkazy vIFRAMEby byly uvedeny také.
Jinými slovy: bezešvý atribut dělá mnohem víc než jen odstranit hranice z IFRAME. Pokud hodláte nastavit IFRAME abyste byli bez problémů, měli byste si být velmi jistí, že obsah nebudete přidávat do vašeho webu žádné bezpečnostní riziko tím, že vložíte škodlivé stránky.




