IFRAME-sisällön sisältö, turvallisuus ja designattribuutit
Elementti mahdollistaa muiden Web-sivujen upottamisen suoraan Web-sivulle. Mutta iframeissa käytetään joitain tietoturva- ja suunnittelukysymyksiä, joita ei ole käsitelty HTML 4.01: ssä. HTML5 tuo kolme uutta ominaisuutta tähän elementtiin näiden ongelmien ratkaisemiseksi:
Hiekkalaatikon ominaisuus
IFRAME-elementin sandbox-attribuutti on erittäin hyödyllinen iframe-suojausominaisuus. Kun sijoitat sen IFRAME-elementtiin, annat käyttäjälähtöä hylkäämään ominaisuuksia, jotka saattavat aiheuttaa turvallisuusriskiä sivustolle ja sen käyttäjille.
Esimerkiksi:
Selaimen avulla estetään kaikki ominaisuudet, jotka saattavat olla tietoturvariski. Erityisesti plugins on kielletty. Lomakkeita ei voi jättää. Sscriptit eivät toimi ja linkit IFRAME: n ulkopuolelle eivät ole sallittuja. Lopuksi evästeiden, paikallisen tallennuksen ja muiden samaan verkkotunnukseen (alkuperään) käytettävien sivujen käyttö ei ole sallittua.
Tämän jälkeen voit ottaa uudelleen käyttöön joitakin ominaisuuksia käyttämällä hiekkalaatikon avainsanojen arvoja. Nämä avainsanat ovat:
- sallita-lomakkeet -lomakkeen lähettäminen
- sallia saman alkuperän käyttämät skriptit pääsemään sisällön, kuten evästeiden, samasta alkuperäisestä verkkotunnuksesta
- allow-scripts-kaikki kirjoitusohjelmat toimimaan tässä IFRAMEssä
- allow-top-navigation - anna IFRAME-linkit ja komentosarjat _top-kohteelle
Ei ole hyvä idea asettaa sallittujen komentosarjoiden ja sallia saman alkuperäisen avainsanan samassa IFRAME-palvelussa. Jos teet tämän, sulautettu sivu voi poistaa kokonaan hiekkalaatikkomääritteen, mikä estää kaikki tietoturvahyödyt.
Srcdoc-ominaisuus
Srcdoc-attribuutti on attribuutti, joka antaa web-suunnittelijaa hallita iframeja ja turvallisuutta. Web-suunnittelija sijoittaa sen sijaan, että hän yhdistää Web-sivun toiseen URL-osoitteeseen, HTML-koodi, joka on näytettävä IFRAME-tilassa srcdoc-attribuutin sisällä.
Aluksi saatat ajatella, "miten tämä eroaa HTML- sivun sijoittamisesta suoraan sivulle?" Ja jollain tavoin se ei ole kovin erilainen.
Mutta sinun on pidettävä mielessä jonkin IFRAME-elementin toiminnot, joka on säilyttää luottamukselliset tiedot erillään muusta sivustosta.
Asentamalla luottamukselliseen lähteeseen, kuten lomakkeeseen, luodun HTML: n IFRAME-muotoon, voit "luottaa" epäluotettavaa sisältöä ja näyttää sen edelleen sivulla. Blogimerkinnät ovat esimerkki. Useimmilla blogeilla on vain rajallinen määrä HTML-tageja, joita kommentoijat voivat käyttää kommentteihinsa. Mutta asettamalla nämä kommentit hiekkalaatikkoon IFRAME käyttäen srcdoc-attribuuttia, kommentit voivat olla tehokkaampia ja suojata samalla koko sivustoa.
Turvallisuus ja iframit
Nämä kaksi ominaisuutta tarjoavat IFRAME-elementtien suojauksen, mutta ne eivät ole todisteita kaikista haitallisista sivustoista. Jos haitallinen sivusto voi vakuuttaa käyttäjää pääsemästä vihamieliseen sisältöön suoraan (esimerkiksi kirjoittamalla URL-osoitteen selaimeensa), heitä voidaan silti hyökätä.
Jos mahdollista, on parasta asettaa hiekkalaatikon IFRAME sisältämä teksti teksti / html-sandboxed MIME -tyyppi.
Saumaton ominaisuus
Saumaton attribuutti on booleinen attribuutti, joka kertoo selaimelle IFRAME: n näyttämisen ikään kuin se olisi osa emokumenttia. Jos haluat, että IFRAME näyttää saumattomasti, lisää tämä attribuutti elementtiin:
IFRAME-saumattomuuden tekeminen on muutakin kuin ulkoasu, mutta myös sivun vuorovaikutus kehyksen kanssa. Esimerkiksi:
- IFRAME-linkit avautuvat pääikkunassa , ellei IFRAME-sivulle ole asetettu _SELF-asetusta.
- IFRAME: n CSS lisätään koko asiakirjan kaskadiin.
- IFRAME-sivun juuriosaa pidetään IFRAME-lapsena.
- IFRAME: n leveys ja korkeus asetetaan samalla tavoin kuin muut lohkotason elementit asetettaisiin.
- Kun vanhempiasiakirja katsellaan puhedoraustyökalulla, kuten näytönlukija, IFRAME luetaan ilmoittamatta sitä erillisenä asiakirjana.
- Vanhemman asiakirjan komentosarjat vaikuttaisivat IFRAME-asiakirjaan samalla tavoin. Esimerkiksi jos komentosarja merkitsi kaikki sivun kehykset, myös IFRAME-linkit luetellaan.
Toisin sanoen saumaton attribuutti on paljon muutakin kuin poistaa IFRAME-rajapinnat. Jos aiot asettaa IFRAME: n saumattomaksi, sinun kannattaa olla varmoja sisällöstä, jotta et lisää turvallisuusriskiä verkkosivustoosi sulkemalla haitallisen sivuston.