Inline Frames leidžia įtraukti turinį iš išorinių šaltinių į jūsų puslapius
"Inline" rėmeliai, paprastai vadinami "iframes", yra vienintelis rėmo tipas, kurį leidžiama naudoti HTML5. Šie rėmeliai iš esmės yra jūsų puslapio skiltis, kurią jūs "iškirpti". Toje vietoje, kurią išpjaustėte iš puslapio, tuomet galėsite patekti į išorinį tinklalapį. Iš esmės, iframe yra dar vienas naršyklės langas, esantis tiesiai jūsų tinklalapio viduje. Matote, ar "commonly used" failai yra naudojami svetainėse, kuriose reikia įtraukti išorinį turinį, pvz., "Google" žemėlapį arba vaizdo įrašą iš "YouTube".
Abiejuose populiariose svetainėse jų įterpimo kodą naudoja "iframes".
Kaip naudotis elementu IFRAME
Elementas naudoja HTML5 pasaulinius elementus, taip pat keletą kitų elementų. Keturi yra ir atributai HTML 4.01:
- - rėmo šaltinio URL
- - lango aukštis
- - lango plotis
- - lango pavadinimas
Trys yra nauji HTML5:
- srcdoc-rėmelio šaltinis HTML. Šis atributas turi pirmenybę prieš bet kurį atributo src URL
- smėlio dėžė - sąrašas funkcijų, kurios turėtų būti leidžiamos ar uždraustos rėmelio lange
- besiūliai - nurodo naudotojo agentą, kad iframe turėtų būti pateiktas kaip nematomą pagrindinio dokumento dalį
Norėdami sukurti paprastą "iframe", nustatykite šaltinio URL, pločio ir aukščio:
Atkreipkite dėmesį, kad galite pasirinkti nenaudoti piktogramų verčių jūsų "iframe" nustatymams, tačiau vietoj to gali nuspręsti naudoti procentinį dydį.
Jei kuriate jautrią svetainę, kurios dydis turėtų keistis, naudojant skirtingus ekrano dydžius, šie procentai bus svarbūs.
Taip pat yra keletas atributų, galiojančių HTML 4.01, bet pasenęs HTML5. Kadangi dauguma svetainių šiandien naudoja HTML5 +, šie atributai yra tie, kurių nenorite naudoti (bet kuriuos galite matyti kai kuriuose senesniuose dokumentuose).
- - vietoj to naudokite A elementą, kad susietumėte su aprašymu
- - vietoj to naudokite CSS floto nuosavybę
- leisti skaidrumą - vietoj to naudokite CSS fono nuosavybę, kad IFRAM būtų skaidrus
- -pagal pasinaudoti pasienio CSS nuosavybe
- marginheight- vietoj to naudokite CSS maržos nuosavybę
- maržos plotis - vietoj to naudokite CSS maržos nuosavybę
- - vietoj to naudokite CSS perpildymo nuosavybę
IFRAME naršyklės palaikymas
IFRAME elementą palaiko visos šiuolaikinės naršyklės:
- "Android"
- "Chrome"
- "Firefox"
- Internet Explorer 2+
- "iOS" / "Safari" mobilusis telefonas
- Netscape 7+
- Opera 3+
- Safari
Jei pirmiau pateiktame sąraše nėra rodomos jokios versijos numerio, tai yra todėl, kad visos šios naršyklės versijos jį palaiko.
Vienas dalykas, į kurį reikia atkreipti dėmesį, yra tai, kad nors visos naršyklės palaiko elementą IFRAME, kai kurioms HTML5 funkcijoms vis dar yra ribotas palaikymas.
- Naudojant perpildymą slinkties išjungimas nėra patikimas. Jei nenorite, kad schemų juostos būtų jūsų "iframe", turėtumėte ir toliau naudoti przewijanym pobūdžio.
- "Srcdoc", "sandbox" ir "besiūliai" atributai šiuo metu nėra palaikomi jokiomis naršyklėmis.
Susiejimas su "Iframes"
Kai suteiksite savo "iframes" vardą ar ID, tuomet galėsite nukreipti savo nuorodas to rėmelio elementu A elementu. Tada, kai vartotojas spustelėja nuorodą, jis atsidarys nuorodoje nurodytoje iframe vietoj dabartinio lango.
Išbandykite patys. Įveskite toliau nurodytą informaciją į tinklalapį:
Jei IFRAME atidarytame dokumente nėra nustatytų tikslų , visos tos nuorodos bus atidarytos tame pačiame "iframe" kaip pagrindinis dokumentas.
Šią funkciją galite naudoti norėdami, kad nuorodos viename IFRAME pakeistų kito IFRAME turinį tame pačiame puslapyje.
IFrames ir saugumas
IFRAME elementas savaime nėra saugumo rizika jums ar jūsų skaitytojams.
Deja, iframai gavo blogą reputaciją, nes jie gali būti naudojami kenkėjiškose svetainėse, įtraukiant turinį, kuris gali užkrėsti lankytojo kompiuterį, be to, jis nemato jo puslapyje. Tai daroma turint nuorodas į nematomą IFRAME, o tie scenarijai išjungia kenksmingą kodą. Vartotojas spustelėja nuorodą ir mano, kad nuoroda yra sugadinta, nes nieko nepadarė, tačiau scenarijus buvo nustatytas ten, kur jo nematė.
Taip pat yra kompiuterių virusų, kurie į savo tinklalapius įtrauks nematomą IFRAME, veiksmingai paversdami jūsų svetainę botnetu. Jie gali tai padaryti naudojant SQL injekcijos ir kitų atakų.
Tai, ką reikia atsiminti, įtraukiant į savo puslapį "IFRAME", yra tai, kad jūsų vartotojai yra tik tokie pat saugūs kaip ir visų svetainių, į kurias nukreipiate, turinys. Jei turite pagrindo jaustis, kad svetainė yra nepatikima, nedarykite jokios nuorodos į ją ir, be abejo, neįtraukite jos turinio į IFRAME. Tačiau susiejimas su savo puslapiais per "frame" neretai kelia pavojų jums ar jūsų naudotojams.
Originalus straipsnis Jennifer Krynin. Redagavo 11/7/16 Jeremy Girard