Iframe in Frame – kaj sta in kako najbolje uporabiti okvirje v Html. Uporaba okvirjev v HTML Kako odpreti dokumente s povezavo v okvirju
Izraz "okvir" je prišel k nam v angleščini. V prevodu ta beseda pomeni "okvir" in predstavlja ločeno območje okna. Po svoji strukturi je tak razdelek popolnoma dokončan dokument HTML.
Posamezni okvirji razdelijo okna brskalnika na razdelke, ki so postavljeni drug poleg drugega. V tem primeru se vsak okvir naloži s svojo celotno stranjo. Tehnologija okvirja še vedno povzroča veliko polemik, vendar je treba reči, da je vrhunec njene priljubljenosti že mimo. IN ta trenutek ta tehnologija je zastarela in navadni okvirji niso več podprti v HTML5.
Zgodovina tehnologije
Danes lahko rečemo, da je odločitev o odmiku od dela z okvirno tehnologijo dokončno sprejeta. Na spletnem mestu https://www.w3.org/TR/html5-diff/#obsolete-elements je jasno navedeno, da so običajne oznake frame, frameset in noframes za ustvarjanje takšne strukture zastarele. Kot argument so podani podatki, da uporaba takšne strukture negativno vpliva na uporabnost strani in njihovo dostopnost v internetu.
Toda sodobne tehnologije podpirajo element IFRAME. Njegova uporaba vam omogoča vstavljanje okvirjev v besedilne bloke na straneh. Poleg tega je mogoče takšne elemente poravnati glede na samo besedilo. Pomembna točka: velikosti vgrajenih okvirjev načeloma ne morete spremeniti. Nimajo ustreznega atributa za spreminjanje velikosti.
V prihodnosti, brez preskoka v tehnologiji, je nadaljnja uporaba okvirjev malo verjetna. In ne smemo pozabiti, da je vodilna organizacija za standardizacijo internetnih tehnologij - W3C - jasno pokazala, da razvijalci spletnih strani ne bi smeli uporabljati takšnih struktur.
To pomeni, da okvirjev načeloma ne bi smeli uporabljati za strukturiranje strani pri ustvarjanju novih virov. Toda s podporo in izboljšavami obstoječih spletnih mest bo poznavanje značilnosti tehnologije in njihove uporabe zelo koristno in produktivno.
Prednosti okvirjev
Med prednostmi okvirne tehnologije so enostavna uporaba, visoka hitrost in možnost natančnega pozicioniranja informacij na določenih delih okna.
Uporaba okvirjev zagotavlja prihranke pri obsegu prenesenega prometa med delom s spletnim mestom. Navsezadnje se pri dostopu do drugega dela informacij običajno posodobi le en del strani in ne celotna koda.
Ta struktura ponuja zanimive možnosti krmarjenja po vsebini vira. Navsezadnje si lahko znotraj okna brskalnika v sosednjih okvirih ogledate različne bloke informacij. Za uporabnike je pomembno, da vedo, da je iskanje znotraj okvira enakovredno izvajanju takšne operacije na ločeni strani.
Med delom s spletnim mestom lahko dinamično spremenite velikost ločenega razdelka, kar je težko izvesti z drugimi tehnološkimi rešitvami.
Možne slabosti
Težave s spletnimi stranmi, ki uporabljajo okvirje, so se kopičile postopoma, danes pa so dosegle mejno raven. Med glavnimi pomanjkljivostmi so:
Nezadovoljiva uporabnost. Danes delež uporabnikov mobilnih naprav in tablic z majhnimi ločljivostmi zaslonov narašča in že presega število tistih, ki obiskujejo strani iz namiznih in prenosnih računalnikov. In tukaj uporaba okvirjev ustvarja resne težave s prilagodljivostjo strani, ko so prikazane na razne naprave. Ta problem danes nima praktične rešitve.
Poslabšanje dostopnosti strani za različne programe. Povečanje števila dodatnih programov (na primer bralnikov zaslona) razkriva veliko slabšo dostopnost informacij za branje.
Strani se ne prikazujejo pravilno. Pogosto je postavitev strani s takšno strukturo v brskalnikih z vidika oblikovanja videti napačna. In to je posledica značilnosti tehnologije. Z vidika SEO je uporaba okvirjev v HTML postavitvi strani zelo nezaželena.
Razpoložljivost enega naslova za celotno strukturo. Posledično notranjih strani takšnega mesta ni mogoče dodati med zaznamke. To povzroča neprijetnosti za uporabnike.
Nepravilno indeksiranje s strani iskalnikov. Prisotnost na spletnem mestu več polnopravnih dokumentov, iz katerih je oblikovana ena stran, znatno oteži delo iskalnikov. To vodi do znatnih napak med indeksiranjem. Posledica tega je, da napačna definicija tem in naslovov strani povzroči izgubo kritične vsebine zaradi indeksiranja.
Nespoštovanje. To je precej nenavadna napaka za vire v omrežju. In vendar je treba povedati, da dejstvo, da postavitev spletnih mest na okvirih postaja zastarela, vodi v dejstvo, da se avtorji in lastniki takšnih virov štejejo za retrogradne. Vendar obstaja nekaj izjem. Celo sodobna spletna mesta, ki gostijo klepetalnice, običajno uporabljajo okvirje.
Indeksiranje okvirjev s strani iskalnikov
Informacije, ki prihajajo iz iskalnikov, nam jasno povedo, da se strani z okvirji indeksirajo opazno počasneje. V tem primeru se pogosto pojavijo napake, povezane s samo strukturo. Navsezadnje vsak okvir prikazuje popolno internetno stran. In prav tak del spletnega mesta je lahko vključen v bazo indeksiranja.
Negativni vidik takšnega indeksiranja je, da uporabnik ob vstopu v notranjost strani običajno ne vidi menijev in drugih navigacijskih mehanizmov. In to ni presenetljivo. Morate razumeti, da posodobitev okvirja v tem primeru ni rešitev problema. Navsezadnje so vsi navigacijski mehanizmi postavljeni v drugo posodo.
Druga težava je, da pogosto glavna stran strukture vsebnika vsebuje le naslov, oznake meta opisa in oznako FRAMESET. In to se zdi logično - navsezadnje je smiselna vsebina umeščena v ločene dokumente. Prav te bo obiskovalec strani videl na strani v okvirjih.
Toda iskalni robot takšne strani skoraj nikoli ne indeksira. Na njej ne najde vsebine, ki bi bila uporabna za obiskovalce. Iskalni roboti so konfigurirani tako, da poskušajo pridobiti in indeksirati informacije, ki se nahajajo znotraj oznake body. Tu se pojavi iskanje uporabnih vsebin za uporabnika. Toda na strani okvirja te oznake ni, nadomesti jo FRAMESET.
To težavo je mogoče delno rešiti z uporabo NOFRAMES. Toda na mnogih spletnih mestih je ob dostopu do njega navedena le informacija, da brskalnik ne podpira okvirjev. In za ogled strani morate uporabiti drug program.
Takšni primeri povzročajo veliko težav uporabnikom, ki ob obisku strani ne vidijo menija in drugih informacij, ki bi morale biti prikazane. Če so na spletno stran postavljeni okvirji, se njeni parametri z vidika SEO zmanjšajo. Hkrati statistika vedenja uporabnikov kaže, da avtoriteta vira med iskalniki pada. To vsekakor negativno vpliva na obisk spletne strani.
Za iskalnike in robote za indeksiranje je še posebej težko obdelati ugnezdene in veččlanske strukture. Dejstvo, da ima vsak vsebnik vse značilnosti ločenega dokumenta, vendar ne vsebuje celotne navigacije in drugih informacij, dodatno otežuje situacijo.
Iskalnikom lahko olajšate delo s pravilnim povezovanjem na straneh. V tem primeru morate podvojiti vse menijske povezave, tako da jih je mogoče najti v vsakem posameznem delu strani. Toda to bistveno oteži in upočasni delo pri optimizaciji spletnega mesta in posodabljanju informacij na njem.
Izkušnje številnih optimizatorjev in spletnih skrbnikov kažejo tudi na to, da strani na okvirjih niso deležne visokih uvrstitev v iskalnih rezultatih. To se zgodi, tudi če so vključeni v zbirko podatkov za indeksiranje.
Značilnosti promocije spletnega mesta v okvirjih
Nekateri iskalniki nepravilno ali zelo nepravilno indeksirajo uokvirjene datoteke. Posledično baza podatkov indeksa ni napolnjena z naslovi nadrejenih virov (kot bi moralo biti), temveč s povezavami do podrejenih spletnih mest.
Da bi zmanjšali težave pri indeksiranju spletnih mest na podlagi okvirjev, se pri njihovem opisu uporabljajo posebne oznake in parametri. Glavni element strukture vsebnika je okvir. On je tisti, ki nadomesti standardno telo; v izvorni kodi. Vsako posamezno posodo v strukturi opisuje okvir. Njegova količina v kodi strani ustreza številu posameznih razdelkov, prikazanih v oknu brskalnika ob ogledu.
Te oznake je treba namestiti na domača stran in nato podvojite vsebino znotraj vsakega od njih.
Področja uporabe okvirjev
Razvijalci dokumentov HTML imajo precej široko izbiro oblik za prikaz informacij na straneh. Besedilo in grafične informacije jih je mogoče razvrstiti in organizirati z uporabo seznamov, tabel ali preprosto z uporabo možnosti poravnave, nastavljanja vodoravnih črt in delitve na odstavke. Včasih te funkcije niso dovolj in morate okno brskalnika razdeliti na ločena področja ali okvirje. V številnih opisih jezika HTML v ruskem jeziku se namesto izraza okvirji uporablja izraz okvirji. Pogostost uporabe obeh izrazov je približno enaka.
Izbira okvirne strukture za prikaz informacij na WWW je upravičena v naslednjih primerih:
če je potrebno, upravljajte nalaganje dokumentov v eno od podobmočij pregledovalnega okna brskalnika med delom v drugem podobmočju;
locirati informacijo na določenem mestu v pregledovalnem oknu, ki mora biti vedno na zaslonu, ne glede na vsebino drugih podobmočij zaslona;
za predstavitev informacij, ki so priročno razporejene v več sosednjih podobmočjih okna, od katerih si je vsako mogoče ogledati neodvisno.
Navedeni seznam ne izčrpa vseh možnih primerov, kjer je mogoče uporabiti okvirje, ampak je priporočilne narave.
Najprej razmislimo o tipični uporabi okvirjev s primeri dokumentov HTML iz resničnega življenja, nato pa se obrnemo na pravila za razvoj dokumentov, ki vsebujejo okvirje.
Na sl. Slika 5.1 prikazuje eno od HTML strani agencije Finmarket, ki je specializirana za posredovanje informacij s finančnih in borznih trgov Rusije.
riž. 5.1. Tipičen spletni dokument z okvirno strukturo
Ta stran razdeli okno brskalnika v tri okvirje. Spodnji del okno zavzema 20 % višine celotnega okna in vsebuje stalne informacije, ki so v tem primeru grafični meni, ki omogoča dostop do najpomembnejših razdelkov kadarkoli. Ta okvir ne more spremeniti svoje velikosti na podlagi uporabniških ukazov in nima drsnih trakov. Zgornji del okno (80% višine) je vodoravno razdeljeno na dva okvirja. Levi okvir vsebuje kazalo dokumentov, ki si jih lahko ogleda uporabnik. Desni okvir, ki zavzema večji del preglednega okna, je namenjen prikazu samih dokumentov. Ko sta ta dva okvirja prvotno naložena, vodoravno razdelita okno brskalnika v razmerju 15 % proti 85 %. To razmerje lahko uporabnik med ogledom spreminja, kar vam omogoča izbiro optimalnih velikosti okvirja ob upoštevanju vsebine naloženih dokumentov. Vsak od teh okvirjev ima svoj drsni trak, ki vam omogoča ogled celotne vsebine okvirja, ne glede na velikost samega okvirja, celotnega okna brskalnika ali uporabljenih pisav. Ko izberete katero koli povezavo v levem okvirju, se ustrezen dokument naloži v desni okvir. Ta struktura vam omogoča, da na zaslonu hkrati vidite tako kazalo dokumentov kot vsebino izbranega dokumenta.
Tukaj je brez pojasnila delček kode HTML, uporabljene za izdelavo dokumenta s to strukturo:
Ta primer prikazuje najbolj tipično uporabo okvirnih struktur, kjer en okvir služi kot kazalo dokumentov, drugi pa se uporablja za nalaganje njihove vsebine. Reševanje takšnega problema brez uporabe okvirjev se običajno izvede na naslednji način. Na eni od strani je kazalo vsebine, sestavljeno iz povezav do drugih dokumentov ali njihovih posameznih fragmentov. Ko kliknete na takšno povezavo, kazalo izgine, na njegovo mesto pa se naloži zahtevani dokument, po branju katerega se morate običajno vrniti na kazalo. Pri uporabi okvirjev ta vrnitev postane nepotrebna, saj se kazalo vedno nahaja na delu zaslona.
Najdete ga na internetu
spletna stran elektronske izdaje priljubljenega naslovnega in telefonskega imenika "All Petersburg" v Sankt Peterburgu.
Elektronska različica imenika je dostopna na http://www.allpetersburg.ru in vam omogoča iskanje potrebnih informacij na podlagi zahtev uporabnikov. Tudi ta stran dokumenta ima strukturo okvirja in je sestavljena iz dveh okvirjev, od katerih je prvi širok 100 slikovnih pik, drugi pa zavzema celotno preostalo širino vidnega polja. Okvir, ki se nahaja na levi strani, služi za grafični meni, ki je stalno prisoten na zaslonu, vsebuje pa tudi logotip podjetja Nevalink. Drugi okvir vsebuje dokument, ki je v tem primeru obrazec za zahtevo uporabnika. Strukturo te strani določa naslednja koda HTML:
Okvirji so zelo podobni tabelam – oba razdelita okno brskalnika na pravokotna področja, v katerih se nahajajo nekatere informacije. Vendar pa lahko s pomočjo okvirjev rešite ne le problem oblikovanja strani dokumenta, ampak tudi organizirate interakcijo med njimi. Temeljna razlika med okvirji in tabelami je, da mora imeti vsak okvir svoj ločen dokument HTML, vendar je vsebina vseh celic tabele vedno del istega dokumenta. Poleg tega se stran, prikazana v okvirju, lahko pomika, ko jo gledate neodvisno od drugih. Vsak okvir je v bistvu ločen "mini brskalnik". Za razliko od okvirjev, katerih celotna struktura je vedno prikazana na zaslonu, se tabele morda ne prilegajo v celoti oknu in si jih je mogoče ogledati le po delih. Iz tega sledi, da če je v tabelah HTML skupno število celic praktično neomejeno in lahko doseže nekaj sto, potem število okvirjev v dokumentu običajno ne presega več enot.
nasvet
Če morate le formatirati dokument, je dovolj, da se omejite na uporabo tabel. Če morate rešiti bolj zapletene probleme, na primer organizirati interakcijo med podobmočji oken ali ustvariti podobmočja, ki se stalno nahajajo na zaslonu, je priročno uporabiti okvirje.
Navsezadnje je izbira strukture dokumenta - tabela ali okvir - odvisna od številnih dejavnikov in je ni mogoče nedvoumno vnaprej določiti.
Tukaj so tudistrani, ki se zdijo zgrajene podobno kot prejšnje. Na primer, lahko vzamete stran zelo priljubljene svetovne zbirke programskih izdelkov, namenjenih predvsem delu z internetom. Naslov strežnika http://www.tucows.com. Upoštevajte, da je ime strežnika določila okrajšava, ki izhaja iz okrajšave polnega imena zbirke - The Ultimate Collection of Winsock Software. Ker se je kratica tucows izkazala za soglasno z besedno zvezo dve kravi (dve kravi), se slike krav pogosto nahajajo na straneh strežnika, ocena programskih izdelkov pa je ocenjena v številu mukov (»Moo«) in je grafično prikazano kot vrsta ustreznega števila krav. Večina strežniških strani je zgrajena na enak način - na levi strani okna je seznam razpoložljivih razdelkov, na desni strani pa seznam programskih izdelkov za izbrani razdelek. Na prvi pogled bi morala biti struktura dokumenta približno enaka kot v prejšnjih primerih. Vendar ta dokument ne uporablja okvirjev! Ta stran je zgrajena s tabelo, ki je sestavljena iz samo ene vrstice z dvema celicama. Tabela je brez okvirja in služi samo za oblikovanje strani. Vtis navpično razdeljenega zaslona se ustvari z uporabo grafike v ozadju, ki vsebuje navpična črta, in sploh ne mreže tabele. To lahko preverite z ogledom strani brez nalaganja slik. Uporaba tabele je tukaj očitno posledica pomislekov o večji dostopnosti dokumentov, saj okvirji ne omogočajo prikaza v vseh brskalnikih.
Pomanjkljivost tega pristopa v tem primeru je potreba po ponovitvi celotnega seznama razdelkov (leva stran strani) v vsakem dokumentu, kar nekoliko poveča velikost datoteke.
Primerjava zgornjih primerov kaže, da je uporaba tabel in okvirjev včasih lahko zamenljiva in določena z željami razvijalcev. Upoštevajte, da pogosto, ko gledate stran, na kateri je prikazan dokument, ni mogoče ugotoviti, kako je zgrajen. Končnemu uporabniku ni treba poznati notranje zgradbe dokumenta, vendar bi mu pri razvoju lastnih spletnih strani zelo koristila seznanitev z izvorno kodo obstoječih dokumentov. V prvem primeru (glej sliko 5.1) je struktura okvirja dokumenta takoj vidna - prisotnost dveh navpičnih drsnih trakov že določa prisotnost posameznih okvirjev. Naslednja dva primera sta si po videzu zelo podobna in ni mogoče ugotoviti, da je prvi od njih zgrajen z okvirji, drugi pa z uporabo tabel. Razlike se bodo pokazale le pri delu z njimi. V primeru telefonskega imenika bo pri listanju dokumenta levi del okna ostal na svojem mestu, kar je možno le, če obstaja okvirna struktura. V naslednjem primeru (zbirka programskih izdelkov) bo drsenje premaknilo celotno vsebino okna.
Strukturo dokumenta si lahko ogledate pri delu z brskalnikom Netscape z uporabo elementa Informacije o strani (v različicah 3.x brskalnika Netscape se je ta menijska postavka imenovala Informacije o dokumentu) v meniju Pogled (slika 5.2).
riž. 5. 2
.
Meni pogleda brskalnika Netscape
Poleg tega si lahko kadar koli ogledate izvorno kodo HTML celotnega dokumenta tako, da uporabite element Izvorna koda strani v meniju Pogled (ali element Ogled izvornega okvirja kontekstnega menija z desnim klikom, da si ogledate kodo HTML dokumenta, naloženega v izbran okvir).
nasvet
Ne smete po nepotrebnem zlorabljati uporabe okvirjev, njihovo število pa ne sme presegati treh ali štirih.
Pogosto na resničnih straneh v internetu lahko vidite naslednje primere uporabe okvirjev:dva sosednja okvirja se uporabljata za nalaganje dokumentov, ki ju je priročno sočasno gledati in primerjati med seboj. Vsak od dveh dokumentov, naloženih v okvirje, uporablja tabelarično obliko za predstavitev informacij. Zaradi te organizacije podatkov si lahko vsako od dveh tabel ogledate (ali natisnete) ločeno ali preučujete v primerjavi z drugo.
Vsi primeri v tem razdelku so vzeti s strani priljubljenih strežnikov WWW in morda lahko služijo kot primeri uporabe okvirjev v dokumentih HTML.
Naslednji razdelki tega poglavja pokrivajo pravila za pisanje dokumentov, ki vsebujejo okvirje.
Pravila za opisovanje okvirjev
Zdaj pa preidimo na pravila za pisanje oznak, ki se uporabljajo za dokumente z okvirnimi strukturami.
Najprej si oglejmo celotno kodo HTML, ki ustvari dokument s srednje zahtevnimi okvirji:
Ta primer ustvari uokvirjeno stran, prikazano na sliki. 5.3. Kot lahko vidite, ta koda HTML definira štiri okvirje. Zgornji okvir obsega celotno širino strani in vsebuje naslov. Sledita dva osrednja okvirja, od katerih se eden nahaja na levi strani in zavzame 25 odstotkov širine zaslona, drugi pa zavzame preostali prostor. Zadnji, četrti okvir zavzema spodnjo četrtino zaslona. V vsak okvir je naložen ločen dokument HTML, katerega ime je določeno s parametrom SRC.
Kot je razvidno iz primera, se oznake uporabljajo za opis strukture okvirjev
, in . Poglejmo si namen teh oznak.
riž. 5. 3
.
Rezultat brskalnika Netscape, ki prikaže dokument HTML z okvirji, prikazanimi v primeru
Oznaka
Okvirji so definirani v strukturi, imenovani FRAMESET, ki se uporablja za strani, ki vsebujejo okvirje namesto razdelka BODY redni dokument. Spletne strani, sestavljene iz okvirjev, v kodi HTML ne smejo vsebovati razdelka BODY. Strani z razdelkom BODY pa ne morejo uporabljati okvirjev.
nasvet
Ker uokvirjene strani nimajo razdelka BODY, ni mogoče nastaviti slike ozadja in barve ozadja za celotno stran. Spomnimo se, da te nastavitve določata parametra BACKGROUND in BGCOLOR, zapisana v oznaki BODY. Vendar vam to ne preprečuje nalaganja dokumentov z lastnimi nastavitvami ozadja v vsak okvir.
Vsebnik oznak
in uokvirja vsak blok definicije okvirja. Znotraj posode lahko vsebuje samo oznake in ugnezdene oznake .
Oznaka
ima dva parametra: ROWS (vrstice) in COLS (stolpci) in je zapisan na naslednji način:
.
Opomba
Nekateri brskalniki omogočajo dodatne parametre oznak
Določite lahko vrednosti za ROWS ali COLS ali oboje. Za vsaj enega od teh parametrov je potrebno določiti vsaj dve vrednosti. Če je drug parameter izpuščen, se predpostavlja, da je njegova vrednost 100 %.
nasvet
Če je v oznaki Če je za ROWS in COLS definirana samo ena vrednost, bo ta oznaka veljala za neveljavno in brskalnik jo bo prezrl. Z drugimi besedami, nemogoče je določiti , sestavljen iz samo enega okvirja.
Seznam vrednosti parametrov oznake ROWS in COLS
je z vejicami ločen seznam vrednosti, ki jih je mogoče podati v slikovnih pikah, odstotkih ali relativnih enotah. Število vrstic ali stolpcev je določeno s številom vrednosti na ustreznem seznamu. Na primer, zapis
definira niz treh okvirjev. Te vrednosti so absolutne vrednosti slikovnih pik. Z drugimi besedami, prvi okvir (prva vrstica) je visok 100 slikovnih pik, drugi 240 slikovnih pik in zadnji 140 slikovnih pik.
Nastavitev vrednosti velikosti okvirja v slikovnih pikah ni zelo priročna. Pri tem ni upoštevano dejstvo, da brskalniki delujejo na različnih operacijskih sistemih in z različnimi ločljivostmi zaslona. Hkrati je mogoče za nekatere primere določiti absolutne vrednosti velikosti, na primer za prikaz majhne slike z znanimi dimenzijami. Najboljša možnost bi bila nastavitev vrednosti v odstotkih ali relativnih enotah, na primer:
.
Ta primer ustvari tri okvirje, ki so postavljeni kot vrstice po celotni širini zaslona. Zgornja vrstica bo zavzela 25 odstotkov razpoložljive višine zaslona, srednja vrstica bo zavzela 50 odstotkov, spodnja vrstica pa 25 odstotkov. Če vsota določenih odstotkov ni enaka 100%, bodo vrednosti sorazmerno skalirane, tako da bo rezultat natanko 100%.
Vrednosti v relativnih enotah so naslednje:
.
Zvezdica (*) se uporablja za sorazmerno razdelitev prostora. Vsaka zvezda predstavlja en del celote. Če seštejemo vse vrednosti števil ob zvezdicah (če je številka izpuščena, se predpostavi ena), dobimo imenovalec ulomka. V tem primeru bo prvi stolpec zavzel 1/6 celotne širine okna, drugi stolpec bo zavzel 2/6 (ali 1/3), zadnji pa 3/6 (ali 1/ 2).
Ne pozabite, da številska vrednost brez kakršnih koli znakov določa absolutno število slikovnih pik za vrstico ali stolpec. Vrednost z znakom odstotka (%) določa delež skupne širine (za COLS) ali višine (za ROWS) vidnega polja, vrednost z zvezdico (*) pa sorazmerno porazdelitev preostalega prostora.
Tukaj je primer, ki uporablja vse tri možnosti za nastavitev vrednosti:
.
V tem primeru bo prvi stolpec širok 100 slikovnih pik. Drugi stolpec bo zavzel 25 odstotkov celotne širine vidnega polja, tretji stolpec bo zavzel 1/3 preostalega prostora in zadnji stolpec bo zavzel 2/3. Priporočljivo je, da najprej dodelite absolutne vrednosti v vrstnem redu od leve proti desni. Sledijo jim odstotne vrednosti skupne velikosti prostora. Na koncu se zabeležijo vrednosti, ki določajo sorazmerno delitev preostalega prostora.
nasvet
Če uporabljate absolutne vrednosti COLS ali ROWS, naj bodo majhne, da se lahko prilegajo kateremu koli oknu brskalnika, in jih po potrebi podložite. vsaj, ena vrednost, podana v odstotkih ali relativni obliki, da zapolni preostali prostor.
Če je oznaka uporabljena
, v katerem sta določeni vrednosti COLS in ROWS, bo ustvarjena mreža okvirjev. Na primer:
Ta vrstica kode HTML ustvari okvirno mrežo s tremi vrsticami in dvema stolpcema. Prva in zadnja vrstica zavzemata po 1/4 višine, sredinska črta pa polovico. Prvi stolpec zavzame 2/3 širine, drugi pa 1/3.
Posoda
lahko ugnezdi znotraj drugega podobnega vsebnika, kot je bilo prikazano v začetnem primeru. Razmislimo še o uporabi oznake .
Opomba
Nekateri viri o jeziku HTML kažejo, da parametra COLS in ROWS oznake se med seboj izključujejo. Vendar pa tako Netscape kot Microsoft Internet Explorer omogočata njihovo skupno uporabo.
Oznaka
Oznaka določa en okvir. Nahajati se mora znotraj para oznak
in. Na primer:
Upoštevajte, da oznaka ni vsebnik in za razliko od
nima končne oznake. Celotna definicija posameznega okvirja je narejena z eno vrstico kode HTML.
Obstaja toliko oznak za snemanje koliko posameznih okvirjev je definiranih pri določanju oznake
. V prejšnjem primeru je oznaka podana sta bila dva niza, zato je bilo treba napisati dve oznaki . Vendar je ta primer v bistvu neuporaben, saj noben okvir nima vsebine!
Oznaka ima šest parametrov: SRC, NAME, MARGINWIDTH, MARGINHEIGHT, SCROLLING in NORESIZE.
Opomba
Nekateri brskalniki vam omogočajo uporabo številnih dodatnih parametrov oznak . Na koncu poglavja je podan pregled zmožnosti brskalnikov Netscape in Microsoft Internet Explorer.
V praksi v oznaki Redko se vsi parametri uporabljajo hkrati.
večina pomemben parameter- SRC (okrajšava za vir). Precej pogosto v oznaki podan je en sam parameter SRC. Na primer:
.
Vrednost parametra SRC določa URL dokumenta, ki bo prvotno naložen v ta okvir. Običajno je ta naslov ime datoteke HTML, ki se nahaja v istem imeniku kot glavni dokument. Potem bo vrstica za opredelitev okvirja videti na primer takole:
.
Upoštevajte, da mora biti vsaka datoteka HTML, določena v definiciji okvirja, celoten dokument HTML in ne delček. To pomeni, da mora dokument imeti oznake HTML, HEAD, BODY itd.
Seveda je lahko vrednost SRC kateri koli veljaven URL. Če je na primer okvir uporabljen za prikaz slike GIF, ki se nahaja na strežniku založnika te knjige, potem morate napisati:
.
nasvet
V dokument ne vključite nobene vsebine, ki opisuje strukturo okvirja.
Navadnega besedila, naslovov, grafike in drugih elementov ni mogoče uporabiti neposredno v dokumentu, ki opisuje strukturo okvirja. Vse vsebine okvirjev morajo biti definirane v ločenih datotekah HTML, katerih imena so podana s parametrom SRC oznake .
Parameter NAME podaja ime okvira, ki se lahko uporablja za sklicevanje na ta okvir. Običajno se povezava nastavi iz drugega okvira na isti strani. Na primer:
.
Ta vnos ustvari okvir z imenom "Frame_1", na katerega se je mogoče sklicevati. Na primer:
Za prenos kliknite tukaj
dokument other.htm v okvir z imenom Frame_1.
Upoštevajte parameter TARGET, ki se nanaša na ime okvira. Če okvirju ne dodelite imena, bo ustvarjen neimenovani okvir in se nanj ne bo mogoče sklicevati iz drugega okvira. Imena okvirjev se morajo začeti z alfanumeričnim znakom.
Parametra MARGINWIDTH in MARGINHEIGHT omogočata nastavitev širine robov okvirja. To je zapisano takole:
MARGINWIDTH="vrednost",
kjer je "vrednost" absolutna vrednost v slikovnih pikah. Na primer:
Ta okvir ima robove na vrhu in na dnu 5 slikovnih pik, na levi in desni pa 7 slikovnih pik. Ne pozabite, da tukaj govorimo o robovih, ne o mejah. Parametra MARGINWIDTH in MARGINHEIGHT določata prostor znotraj okvira, znotraj katerega ne bodo nobene informacije. Najmanjša sprejemljiva vrednost za te parametre je ena.
Okvirji bodo samodejno ustvarili in prikazali drsne trakove, če se vsebina okvirja ne prilega v celoti znotraj dodeljenega prostora. Včasih to pokvari zasnovo strani, zato bi bilo priročno, če bi lahko nadzorovali prikaz drsnih trakov. Za te namene se uporablja parameter SCROLLING. Format snemanja:
.
Parameter SCROLLING ima lahko tri vrednosti: DA, NE ali SAMODEJNO. Vrednost AUTO ima enak učinek, kot če ne bi bilo parametra SCROLLING. Vrednost YES povzroči, da se drsni trakovi prikažejo ne glede na to, ali so potrebni, vrednost NO pa prepreči njihov prikaz. Na primer:
.
Običajno lahko uporabnik spreminja velikost okvirjev, ko si ogleduje stran. Če kurzor miške postavite na okvir okvirja, bo kurzor prevzel obliko, ki nakazuje možnost spreminjanja velikosti, in vam omogoča, da okvir premaknete na želeno mesto. To včasih poruši strukturo lepo oblikovanih okvirjev. Če želite uporabniku preprečiti spreminjanje velikosti okvirjev, uporabite parameter NORESIZE:
.
Ta parameter ne zahteva nobenih vrednosti. Seveda, ko je parameter NORESIZE nastavljen za enega od okvirjev, tudi velikosti katerega koli od sosednjih okvirjev ni mogoče spremeniti. Včasih, odvisno od postavitve okvirjev, bo uporaba parametra NORESIZE na enem od okvirjev dovolj, da se prepreči spreminjanje velikosti katerega koli od okvirjev na zaslonu.
Oznaka
Zmožnost dela z okvirji ni bila predvidena niti v standardu HTML 3.0 niti v HTML 3.2. Tukaj je do nedavnega obstajala dokaj tipična situacija, ko se dejansko uporabljene funkcije aktivno uporabljajo na številnih WWW straneh, vendar niso del standarda. To je pomenilo, da lahko brskalniki zakonito ignorirajo okvirje. S prihodom standarda HTML 4.0 se je situacija spremenila - zdaj je podpora za okvirne strukture vključena v standard. Upoštevajte, da je večina sodobnih brskalnikov prepoznavala okvirje že pred pojavom HTML 4.O. Vendar pa je treba zagotoviti informacije uporabnikom, ki uporabljajo brskalnike, ki ne podpirajo okvirjev. Za takšne brskalnike je mogoče zagotoviti alternativne informacije, ki so zapisane med parom oznak in. Videti je takole:
celoten dokument HTML
Vse, kar je postavljeno med oznake in, bodo prikazani v brskalnikih, ki nimajo zmožnosti podpore za okvirje. Brskalniki, ki zaznavajo okvir, bodo prezrli vse informacije med tema oznakama.
Upoštevajte, da v resničnem življenju razvijalci strani HTML pogosto ne uporabljajo zmožnosti oznake za ustvarjanje strani brez okvirnih struktur, ampak preprosto ustvarite dve različici svojih dokumentov HTML. Za to možnost domača stran Običajno vam je ponujena izbira med nalaganjem dokumenta z okvirjem ali brez njega. Nato se glede na izbiro uporabnika naloži samo ena različica dokumenta.
Značilnosti opisovanja okvirnih struktur
Ena najpomembnejših oznak, ki se uporablja pri opisovanju okvirnih struktur, je oznaka . Oznaka ima več parametrov, od katerih nobeden ni obvezen ali odvisen od drugih, vendar je treba pri pisanju upoštevati številne stvari.
Izkazalo se je, da če morate ustvariti okvir, v katerega lahko pozneje naložite dokument, na primer z ukazom iz drugega okvira, morate uporabiti oznako napišite parameter SRC. Če to
parameter izpuščen, okvir ne bo ustvarjen, čeprav bo zanj ostal prostor. Na primer zapis všeč je precej logičen in bi lahko definiral okvir z imenom "B", v katerega se na začetku ne naloži noben dokument. Vendar pa zaradi odsotnosti parametra SRC okvir s tem imenom ne bo obstajal, zato bodo nadaljnji poskusi nalaganja katerega koli dokumenta vanj ostali neuspešni, prostor v oknu, dodeljen temu okvirju, pa bo prazen. Poleg tega bodo nekateri brskalniki (na primer Microsoft Internet Explorer različice 3 za Windows Z.xx) prikazali sporočilo o napaki in se zaprli, ko bodo poskušali naložiti dokument v tak okvir.
Zahteve za nastavitev parametra SRC ni mogoče logično razložiti, zato je najbolje, da to dejstvo enostavno upoštevamo. Potem, tudi če ni nobenega dokumenta, ki bi ga bilo treba naložiti v ta okvir od samega začetka, morate določiti ime datoteke v parametru SRC. Tako datoteko lahko na primer imenujemo empty.htm (prazna), katere vsebina bo najmanjši možni pravilen dokument HTML, in sicer:
Ta dokument lahko zmanjšate na dve oznaki: , ki bo tudi veljaven dokument HTML. Po poti maksimalnega zmanjšanja velikosti "praznega" dokumenta se lahko omejite na datoteko, katere velikost je enaka enemu bajtu, v kateri je shranjen presledek (ali kateri koli drug neprikazen znak). Ta datoteka ne bo veljaven dokument HTML, vendar ne bo povzročala težav z večino brskalnikov. Nadaljnje zmanjševanje velikosti take datoteke na nič ni upravičeno, saj ko jo naloži brskalnik Netscape, prikaže opozorilo (slika 5.4), da dokument ne vsebuje podatkov.
riž. 5. 4
.
Opozorilno sporočilo pri nalaganju datoteke ničelne dolžine
Hkrati pa na to sporočilo reagirati morate s pritiskom na tipko ali gumb miške. Vsakič, ko se dokument znova naloži ali oknu brskalnika spremeni velikost, se sporočilo znova prikaže.
Določite lahko tudi ime neobstoječe datoteke, vendar bo v tem primeru brskalnik Netscape prikazal opozorilo (slika 5.5), ki ne bo preprečilo nadaljnjega dela, bo pa povzročilo podobne nevšečnosti.
Ustvarite datoteko z imenom empty.htm, ki je velika en bajt in vsebuje presledek. Naj bo to pravilo pri pisanju oznake vedno navedite SRC=empty.htm, če ni mogoče takoj določiti imena določene datoteke.
Primeri okvirjev
V tem razdelku je nekaj tipičnih primerov definicij okvirjev.
Vrnimo se k primeru na začetku tega razdelka (slika 5.3). Ta primer uporablja ugnezdeno strukturo
. Zunanja oznaka ustvari tri vrstice višine, oziroma 25, 50 in 25 odstotkov celotne višine vidnega polja:
.
Znotraj tega obsega definicije sta prva in zadnja vrstica preprosti okvirji:
Vsaka od teh vrstic zapolni celotno širino zaslona. Prva vrstica na vrhu zaslona zavzema 25 odstotkov višine, tretja vrstica na dnu pa prav tako 25 odstotkov višine. Med njima pa je ugnezdena oznaka
:
Ta oznaka določa dva stolpca, na katera je razdeljena srednja vrstica zaslona. Vrstica, ki vsebuje ta dva stolpca, zavzame 50 odstotkov višine zaslona, kot je določeno v zunanji oznaki
. Levi stolpec uporablja 25 odstotkov širine zaslona, desni stolpec pa preostalih 75 odstotkov širine.
Okvirji za te stolpce so definirani znotraj ugnezdenega para oznak
in, medtem ko je definicija okvirjev za prvo in zadnjo vrstico zapisana zunaj tega para, vendar znotraj zunanjega v ustreznem vrstnem redu.
Struktura zapisa je lahko razumljiva, če si jo predstavljate kot ugnezdeni blok
kot ločen element . V našem primeru zunanja oznaka določa tri vrstice. Vsak od njih mora biti izpolnjen. V tem primeru se najprej napolnijo z ločenim elementom , potem - kot ugnezdeni blok široka dva stolpca in nato še en element .
Zdaj se lahko pojavi vprašanje, ali je vrednost parametra oznake SRC lahko nastavite ime datoteke, ki nato vsebuje opis strukture okvirja. Da, to je sprejemljivo. V tem primeru oznaka bo uporabljen za kazanje na dokument HTML, ki je okvirna struktura in se uporablja kot ločen okvir.
Vrnimo se k primeru in zamenjajmo ugnezdeno
v ločeno . Seveda boste potrebovali dve datoteki HTML namesto ene, saj sta ugnezdeni bo zdaj v ločenem dokumentu. Tukaj je vsebina prve (zunanje) datoteke:
Vaš brskalnik ne more prikazati okvirjev
Druga datoteka z imenom frameset.htm vsebuje naslednjo kodo:
V tem primeru se zgornja in spodnja vrstica obnašata enako. Toda druga vrstica je zdaj preprost okvir kot drugi. Vendar pa datoteka frameset.htm, na katero kaže parameter SRC, definira lastno strukturo okvirja. Posledično bo zaslon prikazan popolnoma enako kot v prvotnem primeru.
Opomba
Načeloma je mogoče ustvariti ugnezdene strukture , z uporabo oznak , ki se nanašajo na isto datoteko, ki opisuje strukturo okvirja, vendar tega ne bi smeli storiti. Ta situacija bo vodila do neskončne rekurzije in ne bo dovolila nadaljnjega dela. Nekateri brskalniki nadzorujejo to situacijo in preprečujejo možnost napake. Če se naslov, zapisan v SRC, ujema z enim od prejšnjih naslovov v hierarhiji okvirja, je prezrt, kot da parameter SRC sploh ne bi bil prisoten.
nasvet
Uporaba ugnezdenih struktur v različnih kombinacijah je mogoče ustvariti skoraj vsako okvirno mrežo, ki si jo zamislite. Vendar ne pozabite ustvariti uporabniku prijaznega vmesnika in ne le pokazati svoje sposobnosti dela z okvirji.
Tukaj je primer ustvarjanja navadne pravokotne mreže okvirjev:
Ta primer ustvari okvirno mrežo z dvema vrsticama in tremi stolpci (slika 5.6). Ker je definiran niz šestih okvirjev, je potrebno določiti tudi šest posameznih okvirjev . Upoštevajte, da so definicije okvirjev podane po vrsticah. To je prva oznaka definira vsebino prvega stolpca v prvi vrstici, drugi definira vsebino drugega stolpca, tretji pa konča definiranje podatkov za zadnji stolpec prve vrstice. Zadnji trije okvirji nato zapolnijo stolpce druge vrstice.
riž. 5. 6
.
2 x 3 mreža okvirjev
Upoštevajte tudi, da vsota odstotnih vrednosti v parametru COLS ni 100, ampak samo 90 odstotkov. S tem ni nič narobe, saj bo brskalnik samodejno sorazmerno spremenil širino stolpcev, da odpravi to protislovje.
Značilnosti navigacije pri uporabi okvirjev
Delo z dokumenti, ki imajo okvirno strukturo, ima nekaj funkcij, ki jih morate poznati. Te lastnosti JB se kažejo predvsem pri navigaciji pri nalaganju dokumentov. Pomembne razlike v navigaciji niso značilne le za različne brskalnike, ampak tudi različne različice isti brskalnik.
Brskalnik Netscape različice 3.x in 4.x, ko kliknete gumb Nazaj, vrne dokument nazaj v okvir, na katerem ste nazadnje ukrepali. Ista dejanja bodo izvedena, če izberete element Nazaj, ko prikličete kontekstni meni v katerem koli od okvirjev. Naj vas spomnimo, da kontekstni meni prikličete s klikom na desni gumb miške. Tako ne glede na to, v katerem okviru je bil priklican kontekstni meni, bo pritisk na gumb Nazaj preklical zadnjo operacijo, tudi če je bila izvedena v drugem okviru.
Brskalnik Netscape 2.x je deloval povsem drugače. Kontekstni meni vsebuje ukaz Nazaj v okvir, ki vrne dokument v trenutni okvir, namesto da razveljavi zadnjo operacijo.
V kateri koli različici Netscapea lahko dokument, ki je v izbranem okvirju, dodate med zaznamke. Če želite to narediti, morate v zgoraj omenjenem kontekstnem meniju izbrati način Dodaj zaznamek. Če preprosto izberete način Dodaj zaznamek v glavnem meniju brskalnika, se na dokumentu ustvari zaznamek z opisom strukture okvirja.
, ki ne bo natančno kazalo na določen okvir. Možnost ustvarjanja zaznamka na dokumentu ločenega okvira ne pomeni, da bo enaka struktura okvirja nastala, ko boste še naprej uporabljali ta zaznamek. Dokument, na katerega kaže zaznamek, bo naložen v polno okno zunaj strukture okvirja.
Interakcija med okvirji
Najenostavnejša oblika pregledovanja informacij na WWW je sestavljena iz branja strani in sledenja povezavam, pri čemer se trenutni dokument v oknu brskalnika zamenja z drugim dokumentom. Pri delu z okvirji lahko organizirate uporabniku prijaznejšo shemo nalaganja dokumentov.
Interakcija med okvirji je možnost nalaganja dokumentov v izbrani okvir z uporabo ukazov iz drugega okvirja. V ta namen se uporablja parameter oznake TARGET<А>. Ta parameter določa ime okvira ali okna brskalnika, v katerega bo naložen dokument, na katerega kaže ta povezava. Če parametra TARGET ni, se dokument privzeto naloži v trenutni okvir (ali okno). To privzeto vrednost je mogoče preglasiti z določitvijo oznake z želeno vrednostjo parametra TARGET. Določanje imena privzetega okvira za nalaganje je zelo uporabno, ko mora veliko število povezav usmeriti dokumente na določen okvir. Tipična situacija s kazalom v enem okvirju, povezave iz katerega naložijo ustrezne dokumente v sosednji okvir, je bila prikazana na začetku tega poglavja (slika 5.1). Za ta primer v razdelku
datoteko z imenom LIST.htm, je priporočljivo napisati naslednjo vrstico: . V nasprotnem primeru bi morali določiti parameter TARGET za vsako povezavo.
Imena okvirjev se morajo začeti z latinično črko ali številko. Ime je lahko ime obstoječega okna ali okvirja, lahko pa določite novo ime, pod katerim se odpre novo okno. Obstajajo štiri rezervirana imena, ki izvajajo posebna dejanja, ko so navedena. Ta imena se začnejo s podčrtajem (_): "_blank", "_self", "_parent" in "_top". Vsako drugo ime, ki se začne s podčrtajem, ni veljavno.
TARGET="_prazno" - poskrbi, da se dokument naloži v novo okno. To okno ne bo imelo, zato vanj ne bo mogoče naložiti drugega dokumenta.
TARGET="_sebe" - dokument bo naložen v trenutni okvir (ali okno). Ta vnos je treba uporabiti za obhod privzete vrednosti, ki jo določa oznaka .
TARGET="_top" - povzroči nalaganje dokumenta v celotno okno. Če je dokument že v polnem oknu, ima ta vrednost enak učinek kot"_sebe".
TARGET="_starš" - povzroči, da se dokument naloži v območje, ki ga zaseda nadrejeni okvir trenutnega okvira. Če nadrejenega okvira ni, ima ta vrednost parametra enak učinek kot"_top" .
Opomba
Nekateri viri HTML zmotno navajajo, da če okvir nima nadrejenega, je vrednost "_parent" enaka "_self". Ta izjava ni vedno pravilna.
Opozorilo
Rezervirana imena okvirjev "_blank", "_self", "_parent" in "_top" morajo biti zapisana z malimi latiničnimi črkami. Upoštevajte, da je taka zahtevnost edinstvena za Netscape. Microsoft Internet Explorer pravilno prepozna rezervirana imena, zapisana v vsakem primeru.
Tukaj so primeri interakcije med okvirji in posameznimi okni brskalnika. Razmislite o naslednji kodi HTML:
Uporaba okvirjev
Ta dokument HTML opisuje strukturo, sestavljeno iz treh okvirjev z imenom "A", "B" in "C". Imena okvirjev bodo potrebna pozneje za organiziranje povezav med okvirji. Upoštevajte, da okvir z imenom "A" v v tem primeru referenc ne bo, tako da bi lahko sploh ostal brez imena. Ko naložite zgornji dokument v brskalnik, bodo okvirji prikazali informacije, ki jih vsebujejo datoteke, ki jih identificira parameter SRC. Okvir "A" bo prejel vsebino datoteke frame_a.htm, druga dva okvirja pa bosta prejela podatke iz datoteke empty.htm, ki nima podatkov za prikaz. Naj vas še enkrat spomnimo, da dokument HTML, ki opisuje strukturo okvirjev, nima razdelka
in in ima povezave do datoteke z imenom test.htm, ki se nahaja v istem imeniku kot datoteka frame_a.htm.
Besedilo datoteke test.htm je izjemno preprosto:
Testni dokument
Testno besedilo dokumenta
Datoteka frame_a.htm, katere vsebina je bila naložena v okvir "A", ima šest povezav do iste datoteke test.htm z različnimi vrednostmi za parameter TARGET.
Razmislimo o dejanjih, ki se bodo zgodila pri izvajanju teh povezav. Prva povezava z vrednostjo TARGET="B" bo naložila datoteko test.htm v okvir z imenom "in". Upoštevajte, da bo po implementaciji katere koli od šestih povezav brskalnik Netscape samodejno vseh šest obarval v drugo barvo, ker kažejo na isto datoteko. Microsoft Internet Explorer označuje samo povezave, ki so dejansko implementirane.
Druga povezava bo storila enako za okvir "C". Na začetku ni ničesar v okvirih “B” in “C” (natančneje, naloži se vsebina prazne datoteke empty.htm). Izvedba prve in druge povezave bo zapolnila te okvire.
Tretja povezava z vrednostjo TARGET=MD" bo vodila do oblikovanja novega okna brskalnika z imenom "D" in nalaganja datoteke test.htm vanj. Upoštevajte, da se oblika pisanja te povezave ne razlikuje od prve 2. Razlika je v tem, da so bile v prvem primeru v dveh primerih podane reference na obstoječe okvire, katerih imena so bila definirana v datoteki s strukturo okvirja, v tem primeru pa je bila referenca podana na neobstoječ objekt. ta sklic izvede vsaj enkrat, potem se bo ustvarilo okno z imenom "D" in ponovni kliki na povezavo bodo le znova naložili podatke v zdaj obstoječe okno "D". Seveda ga lahko uporabnik kadar koli zapre. čas in ga znova ustvarite tako, da izberete to povezavo. Slika 5.7 prikazuje stanje po implementaciji prvih treh povezav. Spomnimo se, da lokacijo in velikost oken na zaslonu določi uporabnik.
riž. 5. 7
.
Stanje, dobljeno po zaporedni izvedbi prvih treh povezav, ki so na voljo v levem okviru
Peta povezava z vrednostjo TARGET="_top" bo naložila dokument v celotnem oknu namesto celotne strukture okvirja. S to vrednostjo parametra TARGET se novo okno ne ustvari. Vrnitev na strukturo okvirja je možna s klikom na gumb Nazaj.
Opomba
Imen okvirjev ali oken brskalnika ne smete zamenjevati z imeni prenesenih dokumentov. Imena okvirjev med ogledom niso nikjer vidna, potrebna so le za organizacijo interakcije in so zato skrita pred uporabnikom. Vidite jih lahko samo, ko gledate izvorno besedilo datotek HTML.
nasvet
Naj vas spomnimo, da so imena prenesenih dokumentov določena z oznako . Če je dokument naložen v polnem oknu, je njegovo ime prikazano na samem vrhu okna brskalnika. Če je dokument naložen v okvir, potem njegovo ime ni nikjer prikazano, naslov dokumenta, ki vsebuje opis strukture okvirja dokumenta, pa bo še vedno v zgornjem delu okna. Zato imena dokumentov, namenjenih ogledu v okvirjih, niso zelo pomembna. Na primer na sl. 5.7 se isti dokument naloži v okvirja “B” in “C” ter v ločeno okno z imenom “D”, medtem ko je ime dokumenta vidno samo v oknu “D”. Težko pa je, da izpustite imena dokumentov, naloženih v okvirje, saj se lahko pojavijo na primer na seznamu zaznamkov, ko ustvarjate zaznamek za dokument, ki se nahaja v okvirju ali na seznamu ogledanih dokumentov.
Oglejmo si še en zanimiv primer organiziranja interakcije med okvirji in okni brskalnika. Naj bo besedilo glavnega naloženega dokumenta HTML:
Uporaba imen oken
Dokument z okvirno strukturo v novo oknoА>
Uporaba okvirjev
Upoštevajte, da če je glavni dokument standardni dokument HTML, potem datoteka frame.htm, naložena s povezave iz glavnega dokumenta, vsebuje strukturo okvirja in nato povezavo do datoteke empty.htm.
Po nalaganju glavnega dokumenta bo okno brskalnika videti, kot je prikazano na sl. 5.8 (levo okno). Celoten dokument je sestavljen iz dveh povezav. Sledimo prvi povezavi. Ustvari se novo okno z imenom “D”, v katerem se pojavi besedilo datoteke test.htm (slika 5.8, desno okno). Ponavljanje te povezave bo ponovno naložilo samo podatke v oknu "D".
riž. 5.8. Primer medsebojnega delovanja okvirnih oken
Sledimo drugi povezavi. Oblikovano bo novo okno brez imena, v katerega se bo naložila datoteka frame.htm, ki definira dva okvirja z imeni “C” in “D” (slika 5.8, spodnje okno). V obeh okvirih ni ničesar (natančneje naložen je prazen dokument empty.htm). Opazite, da je zdaj odprto okno z imenom "D" in okno z okvirji, od katerih je eden prav tako imenovan "D". Sledimo spet prvi povezavi. Za razliko od prvega primera se podatki ne bodo naložili v okno "D", ampak v okvir z imenom "D". Rezultat vseh opisanih dejanj je prikazan na sl. 5.8.
Opomba
Videz odpirajočih se oken in njihove vsebine je včasih lahko odvisen celo od vrstnega reda uporabnikovih dejanj. Delo z dokumenti, katerih obnašanje je težko predvideti, običajno povzroči upravičeno razdraženost pri uporabniku in kaže na pomanjkanje premišljenosti pri strukturi podatkov s strani razvijalcev.
Če spremenite vrstni red dejanj, tj. najprej izvedete drugo povezavo in nato prvo, se okno z imenom "D" sploh ne bo pojavilo! To se bo zgodilo, ker bo po implementaciji druge povezave ustvarjen okvir z imenom "D" in za prvo povezavo ne bo treba odpreti novega okna.
Ta primer ni nikakršen vzor, ampak le prikazuje možno kompleksnost organizacije interakcije. Nasprotno, poskušajte ne zapletati po nepotrebnem organizacije podatkov, še manj ustvarjati situacij, v katerih se rezultat spreminja glede na vrstni red uporabnikovih dejanj.
nasvet
Izogibajte se kolizijam v imenih okvirjev in oken. Čeprav uradno ni prepovedano imeti okvirjev z istimi imeni, lahko povzroči zmedo.
Opozorilo
Imena okvirjev in oken se primerjajo na način, ki razlikuje med velikimi in malimi črkami. Tako bosta na primer okvirja z imenom "frame_1" in "Frame_1" različna.
Primeri kompleksnejših interakcij med okvirji
Zgoraj smo obravnavali precej preproste tipične primere interakcije med okvirji. Upoštevane so bile naloge ustvarjanja novih oken, zamenjava vsebine posameznih okvirjev, pa tudi prikaz dokumenta v polnem oknu z uničenjem celotne strukture okvirja. Podani so primeri uporabe imen okvirjev po meri, pa tudi rezerviranih imen "_blank", "_self" in "_top". Uporaba zadnjega rezerviranega imena "_parent" je bolj zapletena in bo opisana spodaj.
V tem razdelku si bomo ogledali bolj zapletene možnosti interakcije med okvirji. Predvsem bo izvedena zamenjava vsebin več sosednjih okvirjev.
Ena najpogostejših uporab okvirjev, ki je bila že omenjena v tem poglavju, je primer dveh okvirjev, od katerih eden vsebuje seznam povezav, drugi pa vsebuje same dokumente (slika 5.1).
Poskusimo razširiti formulacijo problema. Recimo, da želite na zaslonu prikazati vsebino dokaj velikega dokumenta, sestavljenega iz poglavij, razdeljenih na razdelke. Tipičen primer je strokovna literatura o določeni temi. Opišemo želeno predstavitev takega dokumenta na ekranu. Zaslon razdelimo na tri okvirje, od katerih bo eden vseboval seznam poglavij knjige, drugi - seznam razdelkov izbranega poglavja in tretji - besedilo izbranega razdelka. Ko izberete povezavo v drugem okvirju, se mora spremeniti vsebina tretjega okvirja. Izvajanje te zahteve je nepomembno. Ko izberete povezavo v prvem okvirju, se mora vsebina drugega in tretjega okvirja hkrati spremeniti. Na prvi pogled je implementacija te naloge v HTML nemogoča (brez uporabe programiranja v JavaScriptu ali drugih), saj se pri izvajanju povezave naloži samo en dokument in ne dva ali več. Kljub temu je rešitev tega problema povsem mogoča.
Pokažimo možno rešitev takega problema na preprostem primeru. Recimo, da želite na zaslonu prikazati tri okvirje in vanje naložiti nekaj dokumentov. Postavimo si nalogo, da v vsakem od teh okvirjev ustvarimo povezave, pri izvedbi katerih je na primer zamenjana vsebina dveh okvirjev. Naj prvi okvir zavzema 50 % širine okna in 100 % njegove višine in ga postavite na levo stran okna. Desna polovica okna je prav tako vodoravno razdeljena na pol in vsebuje še dva okvirja. Ta struktura je opisana z naslednjo kodo:
Z uporabo te kode HTML bo ustvarjena zahtevana struktura, vendar je rešitev težave nemogoča. Potrebno je odstraniti ugnezdeno strukturo
v ločeno datoteko in v tej kodi HTML opišite okvir, ki se nanaša na ustvarjeno datoteko. Potem bo besedilo izvornega dokumenta videti takole:
Primer interakcije med okvirji
Ustvarjena datoteka z ugnezdeno strukturo
ima ime 1_2.htm in vsebuje naslednjo kodo:
1-2
Na prvi pogled se ni čisto nič spremenilo. V obeh primerih so na voljo trije okvirji, v katere se naložijo dokumenti left.htm, 1.htm in 2.htm. Ko pa okvirji medsebojno delujejo, se bo razlika pokazala. Če v prvem primeru noben okvir nima nadrejenega okvirja, bo v drugem primeru za dva okvirja nadrejeni okvir z imenom "Two_Frames". Če torej v katerem koli od dveh okvirjev uporabite povezavo z vrednostjo parametra TARGET, ki je enaka "_parent", bo rezultat v prvem in drugem primeru drugačen. V prvem primeru bo implementacija takšne povezave naložila dokument v polno okno in nadomestila obstoječo strukturo okvirja. Tu nastopi lastnost vrednosti "_parent", ki deluje kot "_top" v odsotnosti nadrejenega okvira. V drugem primeru bo zamenjan okvir z imenom "Two_Frames", ki zavzema desno polovico zaslona in je v bistvu sestavljen iz dveh okvirjev.
Drugi primer se od prvega formalno razlikuje tudi po prisotnosti okvirja z imenom "Two_Frames", na katerega se je mogoče sklicevati. Ravno ta funkcija nam bo omogočila rešitev težave.
Tukaj je vsebina leve datoteke.htm, ki je prvotno naložena v prvi od obravnavanih okvirjev:
Upoštevajte, da se besedilo datotek 1_2.htm in 2_1.htm razlikuje le v vrstnem redu povezav do datotek 1.htm in 2.htm.
Oglejmo si zdaj konstrukcijo dokumenta, naloženega v levi okvir. Vsebuje dve povezavi s parametrom TARGET="Two_Frames". Izvedba katere koli od teh povezav ustvari dva okvirja na lokaciji okvirja »Two_Frames« (to je desna polovica zaslona), ki nalaga dokumenta 1.htm in 2.htm v enem ali drugem vrstnem redu. Tako se pri izbiri možnosti 1-2 dokument 1.htm naloži v zgornji desni okvir, 2.htm pa v spodnji desni okvir. Ko izberete možnost 2-1, se vrstni red dokumentov spremeni. Zaradi tega izmenično izbiranje možnosti ustvarja vtis, kot da dokumenti v dveh okvirjih menjajo mesta. Prav to je učinek, ki smo ga želeli doseči (slika 5.9).
Vsebina dokumentov 1.htm in 2.htm za opisani primer ni pomembna. Vendar pa bomo na primer namesto trivialnih dokumentov ustvarili dokumente s povezavami, ki izvajajo enaka dejanja.
Besedilo datoteke 1.htm:
Dokument 1
Dokument 1
Možnost 1-2
Možnost 2-1
Datoteka 2.htm se od 1.htm razlikuje le v glavi.
Obstajata dve povezavi z vrednostjo TARGET="_parent", ki kažeta na nadrejeni okvir. Te povezave bi lahko zapisali tudi z eksplicitnim imenom nadrejenega okvira, tj. TARGET="Two_Frames", vendar je uporaba implicitnega imena običajno bolj priročna. Če na primer izključite povezave iz levega okvira (dokument left.htm), lahko izpustite ime okvira "Two_Frames", ki je navedeno pri opisu strukture glavnega okvira. To bi ustvarilo okvir brez imena, vendar bi povezave iz dokumentov 1.htm in 2.htm s TARGET="_parent" še vedno delovale pravilno.
nasvet
Kadarkoli je mogoče, uporabite implicitno poimenovanje okvirjev. Na primer "parent", "top", "self" namesto podajanja določenih imen.
riž. 5.9. Interaktivna okvirna okna z učinkom spreminjanja naloženih dokumentov
Razlika med okvirji in okni brskalnika
Pri delu z okvirji se postavlja vprašanje o temeljni razliki med organiziranjem okvirne strukture okna brskalnika in ustvarjanjem več oken. Na prvi pogled se morda zdi, da bi lahko šli z možnostjo ustvarjanja več oken, saj je delo z okni in okvirji zelo podobno. Vsak okvir zahteva nalaganje ločenega dokumenta, ima možnost neodvisnega pomikanja po vsebini in ga je mogoče spreminjati z ukazi iz drugih okvirjev. Te lastnosti okvirjev so podobne lastnostim oken brskalnika. S tabelarično organizacijo podatkov je takšne svobode delovanja nemogoče doseči.
Je pa med okvirji in okni bistvena razlika. Z organizacijo okvirjev razdelitev območja gledanja na okvirje izvede sam dokument HTML, pri čemer navede dimenzije in njihovo lokacijo. Pri ogledu lahko uporabnik spreminja velikost okvirjev, razen če je to prepovedano v opisu njihove strukture. Razporeditev oken določajo splošna pravila dela s sistemom Windows - uporabnik lahko poljubno okno razširi na celoten zaslon, ga minimizira v ikono ali poljubno nastavi njegovo velikost in lokacijo. Okna se za razliko od okvirjev lahko prekrivajo. Ta bogata izbira ima svojo slabo stran - vsakič morate ročno postaviti okna na zaslon in jim spremeniti velikost, da dosežete optimalno možnost gledanja. Pri okvirjih optimalno razmerje velikosti običajno določi razvijalec v opisu strukture okvirja in ga pogosto ni treba spreminjati.
nasvet
Čeprav okvirji ne morejo zagotoviti vseh možnosti za delo s posameznimi okni, bo njihova racionalna organizacija ustvarila največje udobje za uporabnika.
Delo z okni ima tudi druge slabosti. Ustvarjanje vsakega okna zahteva veliko pomnilnika. V Netscapeu je vsako okno v bistvu še ena kopija brskalnika, skupaj s celotnim naborom gumbov in menijev. Enaka situacija je značilna za Microsoft Internet Explorer.
Upoštevajte, da je organizacija posameznih oken v brskalnikih izvedena drugače. Ustvarjanje novega okna z dokumentom povzroči pojav ločene naloge v sistemu Windows, kot lahko vidite pri ogledu seznama izvajajočih se nalog. Zato lahko preklapljanje med okni poteka na enak način kot preklapljanje med različnimi opravili, na primer s pritiskom na bližnjico na tipkovnici +.
Številne priljubljene aplikacije Windows imajo koncept okna dokumenta. Primeri vključujejo urejevalnik besedil Microsoft Word ali grafični program Paint Shop Pro in številne druge. Vsaka od teh aplikacij omogoča hkratno uporabo več oken s podatki in praviloma obstaja meni Okno, ki ponuja seznam oken in omogoča preklapljanje med njimi. Ustvarjanje novega okna v takšnih aplikacijah se običajno zgodi, ko odprete obstoječo datoteko ali ustvarite novo. Vendar pa v teh programih, ko je ustvarjeno novo okno, ni ustvarjeno novo izvajajoče se opravilo.
Netscape ima tudi meni Okno, ki navaja obstoječa okna. (V različicah Netscape 4.x to funkcijo omogoča element Window v meniju Communicator.) Vrnimo se k sl. 5.8. V tem primeru so hkrati odprta tri okna, od katerih je vsako v bistvu ločen brskalnik. Vendar pa so za uporabnika vsa okna istega brskalnika, ki lahko med seboj komunicirajo. V katerem koli od teh oken lahko odprete meni Okno in vidite seznam treh oken. Na sl. Slika 5.10 prikazuje situacijo, ko je to storjeno za spodnje okno.
riž. 5.10. Odpiranje Frame Windows v brskalniku Netscape
Vsako okno lahko zaprete posebej (z ukazom Zapri v meniju Datoteka). Če želite končati delo z brskalnikom v katerem koli oknu, lahko odprete meni Datoteka in izberete Izhod (slika 5.11).
Če je bilo odprtih več oken, se vsa zaprejo, pred tem pa se prikaže opozorilo (slika 5.12).
Vsako okno brskalnika ima lahko svoje nastavitve (čeprav ne vse). Poglej sl. 5.11. Odprti sta dve okni, od katerih je eno razdeljeno na tri okvirje. Isti dokument je naložen v dveh od treh okvirjev, pa tudi v ločenem oknu. Možnost samostojne konfiguracije parametrov vsakega okna vam omogoča, da isti dokument prikažete drugače. V zgornjem primeru je velikost pisave dokumenta v enem oknu večja kot v drugem. Ta učinek je dosežen z nastavitvijo različnih kodiranj za vsako okno (element Kodiranje dokumenta v meniju Možnosti ali element Nabor znakov v meniju Pogled za različico 4.x), pri čemer obe kodiranji uporabljata isto pisavo, vendar različnih velikosti. Spreminjanje katerega koli elementa v meniju Splošne nastavitve vpliva na vsa okna.
riž. 5.11. Zapustitev brskalnika Netscape
riž. 5.12. Opozorilo o zapiranju oken v brskalniku Netscape
Dodatne funkcije brskalnika
Vse zgornje oznake opisa okvirja z ustreznimi parametri so skoraj enako implementirane v brskalnikih Netscape in Microsoft Internet Explorer, vendar pa vsak od teh brskalnikov omogoča dodatno uporabo svojih edinstvenih oznak ali parametrov.
Funkcije brskalnika Netscape
Brskalnik Netscape od različice 3.0 naprej omogoča tri dodatne možnosti: BORDER, FRAMEBORDER in BORDERCOLOR. Parameter BORDER velja samo za oznako
. Vrednost parametra BORDER določa debelino robov med okvirji v slikovnih pikah.
Parameter FRAMEBORDER lahko uporabite v oznaki
, in v oznaki in določa prisotnost okvirja med okvirji. Ta parameter je lahko Da ali NE. Če je parameter zapisan v oznaki , potem njegov učinek velja za vse okvirje v tej skupini. Za posamezen okvir je mogoče vrednost preglasiti. Privzeta vrednost je Da.
Upoštevajte, da parametra BORDER in FRAMEBORDER delujeta neodvisno drug od drugega. Na primer, če je FRAMEBORDER nastavljen na NO in je BORDER nastavljen na vrednost, ki ni nič, potem meja med okvirji ne bo narisana, vendar ji bo še vedno dodeljen prostor, določen z vrednostjo parametra BORDER.
Parameter BORDERCOLOR je mogoče uporabiti kot v oznaki
, in v oznaki in definira barvo obrobe, ki jo je mogoče določiti z imenom barve ali njeno šestnajstiško predstavitvijo.
Tukaj je primer:
Prva vrstica te kode HTML določa tri okvirje, s presledkom med njimi za okvir debeline 10 slikovnih pik (slika 5.13).
riž. 5.13. Risanje robov med okvirji v brskalniku Netscape
Med okvirnima oknoma "A" in "B" se zaradi NO vrednosti parametra FRAMEBORDER okvir ne izriše, vendar je za okvir definirana rdeča barva. Za zadnji okvir "c" je vrednost FRAMEBORDER nastavljena na Da in preglasi vrednost, nastavljeno v prvi vrstici. Zato bo med okvirjema z imenoma »B« in »C« še vedno narisan rdeč okvir z debelino 10 slikovnih pik.
Opomba
Če meje med okvirji niso narisane, brskalnik Netscape ne bo dovolil spreminjanja velikosti okvirjev z vlečenjem z miško, tudi brez parametra NORESIZE. Za Microsoft Internet Explorer je situacija drugačna.
Upoštevajte, da se okvirji brez robov ne uporabljajo zelo redko. Ne smemo pozabiti, da odsotnost okvirjev ne preprečuje pojava drsnih trakov (slika 5.14).
riž. 5.14. Drsni trakovi v okvirju brez robov
Funkcije brskalnika Microsoft Internet Explorer
Brskalnik Microsoft Internet Explorer vam omogoča uporabo parametra FRAMEBORDER za iste namene, kot je opisano zgoraj, vendar vam ne omogoča nastavitve barve in debeline okvirjev. Vendar pa lahko kot vrednost parametra FRAMEBORDER za preklic risanja okvirja uporabite samo številsko vrednost "O" ali številsko vrednost, ki ni nič, za risanje okvirja.
Razlika v pravilih za nastavitev vrednosti parametra FRAMEBORDER za različne brskalnike je zelo neprijetna. Poskusite na primer nastaviti FRAMEBORDER=Da. Ta vnos je pravilen za Netscape, vendar bo za Microsoft Internet Explorer povzročil odsotnost okvirja. Prejšnji primer (slika 5.13) bo ob ogledu v Microsoft Internet Explorerju prikazan brez okvirja.
nasvet
Priporočljivo je, da vrednost parametra FRAMEBORDER vedno zapišete v številski obliki, na primer FRAMEBORDER=0. To sledi pravilom za pisanje parametrov za Microsoft Internet Explorer, vendar krši pravila za Netscape (čeprav ga slednji pravilno zazna).
Opomba
Če okvirji med okvirji niso narisani, vam bo brskalnik Microsoft Internet Explorer (za razliko od Netscape), v odsotnosti parametra NORESIZE, omogočil spreminjanje velikosti okvirjev z "dotikom" tako, da povlečete okvirje z miško. Mesto, kjer bi moral biti okvir, najdete tako, da spremenite obliko kazalca miške.
Brskalnik Microsoft Internet Explorer omogoča uporabo dodatnega parametra FRAMESPACING, zapisanega v oznaki
, katere vrednost določa število slikovnih pik med okvirji, ki naj ostanejo prazni.
Navedimo primer, katerega rezultat prikaza je prikazan na sl. 5.15.
Spreminjanje razdalje med okvirji
riž. 5.15. Prazen prostor med okvirji v Microsoft Internet Explorerju
Opomba
Na žalost številni opisi v jeziku HTML napačno navajajo, da je treba v oznaki uporabiti parameter FRAMESPACING . Microsoft Internet Explorer dovoljuje samo uporabo tega parametra v oznaki .
Lebdeči okvirji
Brskalnik Microsoft Internet Explorer omogoča uporabo edinstvene oznake
Poleg tega lahko za nastavitev položaja in velikosti lebdečega okvirja v dokumentu uporabite naslednje dodatne parametre: WIDTH, HEIGHT, HSPACE, VSPACE, ALIGN. Njihov namen in vrstni red uporabe sovpada z ustreznimi parametri za vdelane slike, ki jih določa oznaka .
Tu je primer uporabe lebdečih okvirjev:
Uporaba lebdečih okvirjev
Primer uporabe koncepta lebdečih okvirjev
СЕМТЕК>
Vaš brskalnik ne dovoljuje prikaza lebdečih okvirjev
Microsoft Internet Explorer je prvi brskalnik (in zaenkrat edini), ki podpira tako imenovane "lebdeče" okvirje.
Te okvirje lahko postavite kamor koli na zaslonu, tako kot grafike in tabele.
Okvir na desni strani tega besedila je postavljen na stran s posebno oznako . Pri ustvarjanju okvirja je bila določena desna poravnava.
Rezultat prikaza tega primera v brskalniku Microsoft Internet Explorer je prikazan na sl. 5.16. Brskalniki, ki ne podpirajo koncepta plavajočih okvirjev, bodo v tem primeru namesto prikaza vsebine dokumenta float.htm prikazali besedilo "Vaš brskalnik ne dovoljuje prikaza plavajočih okvirjev."
riž. 5.16. Plavajoči okvir v Microsoft Internet Explorerju
Upoštevajte, da je koncept lebdečih okvirjev po ideologiji podoben vdelanim slikam ali tabelam. Tukaj je drug dokument HTML popolnoma vdelan na želeno mesto v dokumentu HTML.
nasvet
Trenutno je uporaba lebdečih okvirjev omejena na en brskalnik – Microsoft Internet Explorer različice 3.0 in novejše. Upoštevajte, da uporabniki drugih brskalnikov (zlasti Netscape) ne bodo mogli videti vsebine okvirjev iframes.
Orodja za ustvarjanje dokumentov, ki vsebujejo okvirje
Dokument HTML, ki vsebuje okvirje, lahko tako kot kateri koli drug dokument ustvarite ali uredite ročno s katerim koli razpoložljivim urejevalnikom besedil. Večina specializiranih urejevalnikov HTML nima zmožnosti vizualnega okvirjanja ali pa ima zelo omejene zmožnosti. Obstaja več posebnih urejevalnikov, ki so osredotočeni na ustvarjanje okvirjev. Naj na kratko opišemo zmogljivosti nekaterih od njih.
Urejevalnik okvirjev FrameGang
Eden takšnih urejevalnikov je pripomoček FrameGang, ki ga je razvilo avstralsko podjetje Sausage Software, ki je bolj znano po priljubljenem urejevalniku HTML HotDog.
Informacije o tem programskem izdelku lahko dobite na http://www.sausage.com, kot tudi iz zbirke programskih izdelkov za internet (na http://www.tucows.com ali katerega koli drugega od več deset zrcalnih strežnikov, raztresenih po vsem svetu).
Pripomoček FrameGang je dodatek k kateremu koli urejevalniku HTML ali običajnemu urejevalniku besedil, ki deluje v okolju Windows, ki vam omogoča vizualno oblikovanje potrebne strukture okvirja in nato generiranje ustrezne kode HTML. Nastalo kodo HTML lahko prenesete v urejevalnik HTML prek odložišča Windows (Clipboard). Program FrameGang vam bo omogočil hitro izdelavo želene strukture okvirja.
Poglejmo si zmogljivosti programa. Ko namestite ta program v Windows in ga zaženete, morate izbrati eno od dveh možnih struktur okvirjev prve (zgornje) ravni - stolpično razporeditev okvirjev (Stolpci) ali po vrsti (Vrstice) in določiti tudi njihovo število. V prihodnosti lahko vsak okvir prve stopnje po potrebi razdelimo na več okvirjev druge stopnje. Večje število stopenj okvirja ni predvideno, vendar to ni bistvena omejitev, saj se v praksi redko uporablja več kot dve stopnji.
Za primer izberimo štiri okvirje, razporejene v stolpce. Nato morate ustvariti strukturo okvirjev druge ravni, kar naredite tako, da obstoječe okvirje razdelite v nasprotni smeri. V tem primeru je okvirje mogoče razdeliti samo vodoravno. Ustvarjanje okvirjev druge ravni se izvede v točki menija Dodaj, katerega izvajanje doda trenutnemu okvirju naslednji okvir.
Upoštevajte, da smešne slike v okvirjih nimajo nobenega pomena in služijo samo za zapolnitev praznega prostora. Njihovo risanje lahko prekličete v meniju Možnosti. Ugotavljamo tudi, da sta samo ime proizvajalca (klobasa - klobase) in ime nekaterih njegovih programskih izdelkov (HotDog - ne potrebuje prevoda) določila slog vmesnika tega paketa - v številnih elementih menija je podoba klobas .
Ko določite strukturo okvirjev, morate nastaviti njihove velikosti. To storite tako, da preprosto premaknete meje okvirjev z miško na enak način, kot se naredi za spreminjanje velikosti oken Windows. Nastavljene mere za trenutni okvir so prikazane v odstotkih v oknih z imenom Širina in Višina. Če ne želite nastaviti velikosti okvirja v odstotkih, temveč v slikovnih pikah ali relativnih enotah, morate dobljeno kodo HTML spremeniti ročno zunaj programa FrameGang.
Nato morate za vsak okvir nastaviti njegovo ime (Name), ki ga lahko izpustite, URL dokumenta, ki je bil prvotno naložen v ta okvir (Frame URL), ter izbrati vrednost parametra Resizeable Frame Border in parameter drsenja za vsebino okvirja (Frame Scrolling).
Strukturo okvirja, ki nastaja, si lahko kadar koli ogledate v izbranem zunanjem brskalniku, ne da bi zapustili program FrameGang. Za to se uporablja gumb Predogled. Nastavitev imena brskalnika poteka v meniju Možnosti. Po nastavitvi vseh parametrov morate ustvariti kodo HTML, ki ustreza izbrani strukturi okvirja, ki bo zapisana v odložišče Windows (gumb Prevedi HTML). Nastalo kodo lahko prilepite iz odložišča na želeno mesto v datoteki HTML, ko delate v katerem koli urejevalniku.
Gumba Shrani in Odpri datoteko omogočata shranjevanje in branje datoteke samo v posebnem kodiranju, ki je značilno za program FrameGang in ni namenjeno nobeni drugi uporabi.
Spodaj je koda HTML, ki jo je ustvaril FrameGang za opisani primer:
Za pridobitev pravilnega dokumenta HTML je dovolj, da dobljeno kodo vstavite med oznake in. Dodate lahko razdelek z glavo dokumenta
, v katerem določite potrebne podatke, na primer naslov dokumenta (ne pozabite, da je naslov dokumenta zapisan med oznakama in). Upoštevajte, da lahko sodobni brskalniki delujejo pravilno, tudi če nekatere od potrebnih oznak manjkajo. Če je zgornja koda HTML shranjena kot datoteka z ustrezno pripono, tudi brez dodajanja oznak, bosta tako Netscape Navigator kot Microsoft Internet Explorer lahko pravilno prikazala dokument.
Program FrameGang vam omogoča vizualno oblikovanje okvirjev, je precej priročen in enostaven za uporabo, vendar ni brez nekaterih pomanjkljivosti. Zlasti ni mogoče določiti velikosti okvirjev z zapisom zahtevanih številk v oknih Širina in Višina, saj prikažejo le velikosti, nastavljene pri premikanju meja okvirja z miško. Splošno sprejeta parametra okvirja MARGINWIDTH in MARGINHEIGHT nista nastavljena. Datoteke v besedilni obliki ni mogoče zapisati na disk, kar onemogoča uporabo tega programa brez povezave.
Urejevalnik okvirjev Frame-It
Drug specializiran urejevalnik okvirjev je Frame-It, informacije o katerem lahko najdete na:
http://www.iinet.net.au/~bwh/frame-it.html
Delo s tem programom je v marsičem podobno prejšnjemu. Najprej morate določiti osnovno strukturo okvirjev in njihovo število. Nato je vsak okvir, če je potrebno, razdeljen na več, ki tvorijo strukture druge stopnje. Tako kot prejšnji program je število nivojev gnezdenja okvirjev omejeno na dve.
Za vsak okvir se nastavijo vsi potrebni parametri z izpolnitvijo ustreznih polj. Za razliko od prejšnjega programa je mogoče nastaviti vrednosti parametrov MARGINWIDTH in MARGINHEIGHT. Poleg tega je bila uvedena zastavica Invisible Frame Borders, ki, ko je nastavljena, ustvari naslednji fragment kode:
FRAMEBORDER="NI" BORDER="0" FRAMESPACING="0".
Ko nastavite zahtevane parametre okvirja, lahko ustvarjeno kodo HTML shranite v datoteko ali jo zapišete v odložišče Windows. Ustvarjena koda ne bo vsebovala samo opisa strukture okvirja, ampak tudi začetno oznako , pa tudi nekaj oznak in, med katerimi so zapisane informacije, namenjen brskalnikom, ki ne prikazujejo okvirjev.
Za določen primer bo ustvarjena naslednja koda:
FRAMESACING="0">
z okvirno strukturo
Če v tem primeru počistite potrditveno polje Nevidne meje okvirja, se bo ustvarjena koda bistveno spremenila:
drsenje=samodejno spreminjanje velikosti>
drsenje=samodejno spreminjanje velikosti>
drsenje=samodejno spreminjanje velikosti>
drsenje=samodejno spreminjanje velikosti>
drsenje=samodejno spreminjanje velikosti>
Vaš brskalnik ne more prikazati dokumentov
z okvirno strukturo
Informacije o uporabi okvirjev na WWW
Za informacije o okvirjih se lahko obrnete na naslednje naslove na WWW:
Kako vstaviti stran v stran HTML? Če želite to narediti, morate uporabiti , ki ustvari okvir v vrstici v trenutnem dokumentu, ki prikazuje drug dokument HTML.
Zaslon
Prikazni blok.
Primer kode
Zmogljiv, a enostaven za uporabo
V slabih starih časih je bilo veliko spletnega oblikovanja elementi, ki kvarijo življenje vsakemu razvijalcu. Skoraj vedno so bili slab oblikovalski pristop. Na srečo, element je v HTML5 opuščen. Ampak ali " inline okvir» še vedno na voljo. Ali bo v naslednji različici opuščen? Mogoče bi se morali temu izogniti? Obstaja več veljavnih uporab tega elementa pri ustvarjanju strani HTML. Vendar morate razumeti, kaj je in kako deluje, da se izognete napakam.
Podobnosti in razlike in
Oba elementa omogočata ustvarjanje ločenega dokumenta HTML. Povezava do vsebine dokumenta, na katero se sklicuje trenutna spletna stran, je navedena v atributu src.
. . . . . .
Glavna razlika med in stvar je zagotavlja skladnost s pravilom, da ima dokument HTML prednost. Vsebina se pojavi znotraj elementa, ki je del trenutnega dokumenta. Kot primer razmislite o tem vdelanem videoposnetku iz YouTuba:
Videoposnetek je očitno na strani HTML in ne v ločeni plošči. element je zlomil to paradigmo in dokumentu omogočil nadzor nad oknom brskalnika ter ga razdelil na več majhnih plošč (okvirjev), od katerih vsaka prikazuje ločen dokument. Vse druge razlike med in izhajajo iz te osnovne razlike.
Postavitev, ki temeljijo na okvirih, ne preoblikujte z okvirji iframes
Nekega dne se boste morda soočili z nalogo posodobitve starega spletnega mesta, ki je bilo zgrajeno z okvirji. Morda boste želeli uporabiti in fiksno širino postavitve za poustvaritev iste nočne more neodvisnih plošč in pragov. Vendar ne boste mogli uporabiti ciljnega atributa za odpiranje povezave v ločenem okvirju. Lahko začnete iskati rešitve JavaScript. Prosim, ne počni tega.
Dobra (in grozna) uporaba
Obstaja več veljavnih primerov uporabe za ustvarjanje strani HTML:
vdelava medijskih vsebin tretjih oseb;
vdelava lastne medijske vsebine prek dokumenta na več platformah;
primeri vdelave kode;
vdelava »apletov« tretjih oseb kot načinov plačila.
Tukaj je nekaj groznih primerov uporabe: :
Foto galerija;
forum ali klepet.
Če morate v trenutnega vdelati neodvisne, že obstoječe dokumente HTML, uporabite . Če gradite vse od začetka, ni razloga, da bi zasnovo strani razdelili na več ločenih dokumentov. Še posebej, če dejansko niso neodvisni deli vsebine.
atributi iframe
Ime atributa
Pomen
Opis
peskovnik
Dovoli-isti-izvor Dovoli navigacijo na vrhu Dovoljeni obrazci Allow-skripti
Nastavi številne omejitve za vsebino, naloženo v okvir. Nastavite prej kako ustvariti stran HTML.
pomikanje
da ne avto
Določa, ali naj se v okvirju prikažejo drsniki ali ne. Zastarelo v HTML5. Namesto tega uporabite CSS.
Ime
Ime
Določa ime okvirja.
Poravnaj
levo desno zgoraj srednje dno
Določa poravnavo okvirja glede na okoliške elemente. Je zastarel. Namesto tega uporabite CSS.
obroba okvirja
da (ali 1) št
Uporablja se za omogočanje prikaza obrobe okoli okvirja. Zastarelo v HTML5. Namesto tega uporabite CSS.
longdesc
URL
Uporablja se za določitev URL-ja strani, ki vsebuje dolg opis vsebine okvira. Je zastarel. Namesto tega uporabite CSS.
marginwidth
slikovnih pik
Uporablja se za nadzor širine odmika od vsebine do roba okvirja. Je zastarel. Namesto tega uporabite CSS.
src
URL
Podaja URL dokumenta za prikaz v IFRAME.
vspace
slikovnih pik
Nastavi navpične robove od okvirja do okoliške vsebine. Je zastarel. Namesto tega uporabite CSS.
premer
slikovnih pik %
Določa širino okvirja na strani HTML.
Ta objava je prevod članka “ «, ki ga je pripravila prijazna projektna ekipa
Pozdravljeni, dragi bralci spletnega dnevnika. Danes bomo govorili o okvirjih v HTML. Jasno je, da bomo začeli od začetka, namreč s tem, za kakšno žival gre. Govorili bomo tudi o sedanjosti (Frame) in prihodnosti (Iframe) teh elementov v trenutni različici označevalnega jezika hiperbesedila in v novem standardu Html 5 z .
Na koncu članka se bomo po podrobnem opisu postopka ustvarjanja vgrajenih okvirjev in njihove klasične strukture v kodi Html (ki se že redko uporablja) dotaknili pomembnosti gradnje spletnega mesta na njih in razpravljali tudi o možnih načine njihove uporabe v trenutnem obdobju na primeru mojega bloga.
Kaj je to in kako se iframe razlikuje od okvirja?
Kaj je to? Izkazalo se je, da jih je mogoče uporabljati ne le na spletnih mestih, temveč tudi v vseh aplikacijah za programe, vendar se razlikujejo po tem, da bo okno spletne strani ali aplikacije razdeljeno na več področij, v vsako od katerih se naloži ločen dokument . Poleg tega se ta področja okvirja obnašajo neodvisno drug od drugega.
Verjetno najbolj očiten primer njihove uporabe, s katerim ste se srečali skoraj vsi, so tako imenovane datoteke pomoči, ki jih imajo številni programi, nameščeni na vašem računalniku.
Datoteka z menijem pomoči se naloži v levo okno, dokument, ki ustreza izbrani točki menija, pa se prikaže v desnem oknu. Omeniti velja, da vam ta struktura omogoča, da se izognete ponovnemu nalaganju datoteke z menijem v levo okno, ko odprete nov dokument v desnem. To je točno tisto, iz česar je sestavljen Glavna prednost uporabe okvirjev v HTML.
Pravzaprav je treba samo ime teh elementov razlagati kot neodvisno okno. S pomočjo okvirjev imamo možnost razdeliti eno veliko okno na več fragmentov, ki lahko služijo kot sprejemniki za ločene drug od drugega neodvisne dokumente (strani, besedila, slike, videe itd.).
Kako se ustvari okvirna struktura v označevalnem jeziku hiperbesedila? Če govorimo o standardu Html 4.01 (glede na klasifikacijo), ki je trenutno glavni, potem se za to uporabljajo trije elementi - Frame, Frameset in Noframes.
iframe - vgrajeni okvir v standardu Html 5
Če govorimo o standardu Html 5 (naša prihodnost, katere nekatere elemente podpira že veliko brskalnikov), potem ne bo oznak Frame, Frameset in Noframes, pa tudi klasične strukture okvirjev, namesto tega bo ena single Iframe tag (vdelan okvir) , o katerem bomo govorili na začetku, nato pa se bomo posvetili klasični shemi iz različice 4.01, ki je zdaj dejansko v uporabi.
Iframe, za razliko od klasike, obravnavane spodaj, ne zahteva zamenjave oznake Body z oznakami Frameset. Tisti. to oznako lahko vstavite na navadne strani, na primer znotraj odstavka ali kamor koli drugje. V svojem bistvu je ta element zelo podoben oznaki Img, ki smo jo že obravnavali.
Je element v vrstici z zamenljivo vsebino, ker se obnaša natanko tako kot element v vrstici, vendar se prikaže tuje zunanje vsebine. V jeziku HTML obstajajo le štirje takšni elementi – Img, Iframe, Object in Embed. Zato naš junak pomeni prisotnost zunanje datoteke, ki bo naložena v območje, katerega velikost je nastavljena z atributi te oznake.
to. Iframe je ponorni element, v katerega se naloži zunanji predmet (na primer video). Če želite navesti pot do te datoteke, ki naj se naloži na stran, uporabite poseben atribut Src. Toda za razliko od Img je element iframe seznanjen, tj. obstaja tudi zaključna oznaka:
Ta primer prikazuje izhod na video strani Youtube z uporabo iframe. Za omejitev območja okvirja (okna), kjer bo naložena zunanja datoteka, so na voljo atributi Širina in višina, katerih vrednosti so določene v slikovnih pikah:
Tisti. ta oznaka ustvari območje, v katerega se naloži zunanji predmet (ni pomembno, ali je z vašega spletnega mesta ali iz drugega vira). Širina in višina območja sta podani s širino in višino, atribut Src pa določa pot do tega predmeta.
Element iframe je vse te atribute podedoval od podobnih vgrajenih oznak z zamenjano vsebino (kot je že zgoraj omenjena slika). No, tudi atribute je vzel s slik Hspace in Vspace, ki vam omogočajo, da nastavite zamike od robov okvirja do besedila, ki ga ovija.
Pomembno je tudi, da je poravnava vgrajenega okvirja izvedena na popolnoma enak način, kot smo lahko videli pri preučevanju slik v Html - . Vse enako Poravnaj, ampak za oznako iframe z možnimi vrednostmi Bottom, Top, Middle, Left in Right.
Toda tudi ta element je prevzel več atributov iz oznake Frame iz klasične strukture okvirja, o čemer bomo podrobneje govorili v nadaljevanju besedila. Ti atributi vključujejo Ime, katerega vrednost lahko uporabite kot vrednost, tako da se dokument, ki ga potrebujete, ko kliknete povezavo, odpre v oknu tega okvira (več o tem spodaj).
Tudi v iframe se je atribut Frameborder preselil iz oznake okvirja, ki ima samo dve vrednosti - bodisi 0 (okvir okoli okvirja ni prikazan) ali 1 (okvir je viden). Privzeta vrednost je Frameborder=1, zato boste morali za odstranitev vnesti Frameborder="0":
Atribut drsenja je bil prav tako prenesen iz okvirja v ta element, ki ima privzeto vrednost Auto - drsni trakovi v okvirju se bodo prikazali po potrebi, ko bo vsebina večja od velikosti okna, ki naj bi jo prikazalo.
No, tudi atributa Marginwidth in Marginheight sta se preselila iz elementa Frame. O njih bomo podrobneje govorili v nadaljevanju besedila, a na kratko – omogočajo nastavitev zamika po širini in višini od robov okvirja do vsebine, ki je vanj postavljena.
Kot sem že omenil, je jasen primer uporabe iframe:
Če vstavite iframe neposredno na spletno stran, boste prejeli izpis videoposnetka iz YouTuba. Sklepamo, da je ta element križanec med inline elementi z zamenjano vsebino in pravzaprav klasičnimi okvirji, o katerih bomo zdaj razpravljali.
Okvirji na osnovi oznak Frame in Frameset – njihova struktura
Torej se ustvarjanje klasične strukture okvirja začne s tem, kar napišete v kodo Html, namesto z odpiralno in končno oznako Body, ki bi običajno morala biti prisotna v katerem koli dokumentu, in jo nadomestite z vsebnikom, ki temelji na elementih. Frameset.
Bistvo je, da elementa Body v tem primeru ni mogoče uporabiti – Body (za običajen dokument) ali Frameset (pri ustvarjanju strukture okvirja dokumenta):
Vsak okvir, ki ga ustvarimo znotraj glavnega, je ustvarjen z ločenim elementom Okvir. Ta oznaka je enojna in v njej nastavimo pot do dokumenta, ki se bo naložil v to okno.
Tretji element, ki se ga še nismo dotaknili, je Brez okvirjev. Je seznanjen in vam omogoča, da notri napišete besedilo, ki ga bo brskalnik obdelal in prikazal na spletni strani le, če ta isti brskalnik (ali druga prikazovalna naprava) ne podpira okvirjev. To se lahko zgodi na primer, če uporabljate brskalnik za mobilne naprave.
Običajno v Noframes dodajo ne le informacije o trenutnem stanju z nezmožnostjo obdelave strukture okvirja, temveč dodajo tudi možnost, da greste na druge strani, kjer lahko nadaljujete z delom, ne da bi jih uporabili. O njem je težko reči kaj drugega, zato nadaljujmo.
Izkazalo se je, da element Frameset, ki se uporablja namesto oznake Body, zavzame ves prostor, dodeljen območju za ogled, okvirji pa bodo ustvarjeni znotraj tega območja z uporabo posameznih elementov Frame. V zvezi s tem se postavlja vprašanje - kako razdeliti območje gledanja med ločena okna ali, z drugimi besedami, kako nastaviti velikost vsakega od njih.
To storite tako, da elementu Frameset dodate ustrezne atribute. Dva sta - Stolpci in vrstice. Cols nastavi razdelitev velikega okna na navpične okvirje ali stolpce, Rows pa vam omogoča, da ga razdelite na vodoravna okna ali vrstice.
Ustvarjanje strukture na podlagi Frameset in njegovih atributov Cols in Rows
Vrednosti za Cols in Rows oznake Html Frameset so številke, ločene z vejicami (brez presledkov). Te številke določajo razmerja oken, ki jih želimo dobiti kot rezultat. Torej, ne glede na to, koliko števil, ločenih z vejicami, je zapisanih v Cols ali Rows, bo rezultat število okvirjev, ki jih imamo.
Na primer, s tem zapisom bomo dobili tri navpične stolpce, katerih širina bo ustrezala razmerju 2:5:3.
Ker smo nastavili razmerja za tri okvirje, bomo morali vključiti tri elemente okvirja med začetno in zapiralno oznako Frameset, vsaj brez podajanja dodatnih atributov:
Posledično bo naša okvirna struktura, sestavljena iz treh praznih oken, videti takole:
V tem primeru nastavimo velikosti oken (Frame) z uporabo odstotkov, ki so vzeti iz širine vidnega območja (to je v primeru uporabe Cols) ali iz njegove višine (Rows). Pri spreminjanju vidnega polja se bo ohranilo odstotno razmerje med velikostmi okvirja. Toda namesto odstotkov lahko uporabite tudi preproste številke, ki bodo pomenile. Mislim, da tudi tukaj ne bi smelo biti težav pri razumevanju.
Toda v oznakah velikosti obstaja tudi precej nenavadna možnost, ki izgleda zvezdica "*". Poleg tega je lahko samo »*« ali zvezdica s številko spredaj, na primer »3*«. Pametna stvar, ki je zelo podobna odstotkom in pomeni, da prostor za Frame razdelimo sorazmerno.
Poglejmo si primer. Zdaj izberimo razdelitev vidnega polja v vodoravne vrstice z uporabo vrstic:
Kaj pomeni ta zapis? Celotno območje gledanja, ki nam je na voljo navpično, bo razdeljeno v tri vrstice. Višina prve bo posneta pri 200 slikovnih pikah, druga pri 500, tretja vrstica pa bo zasedla ves preostali prostor po višini, ker Za njegovo velikost je bil uporabljen »*«.
Omeniti velja, da vrednosti "*" in "1*" pomenita isto stvar - ves preostali prostor razdelimo na enega in ta en del damo temu okvirju (no, to je ves preostali prostor).
Toda poglejte, kaj se zgodi, če uporabite vrednost »*« s številko za delitev v razmerju:
Kakšne bodo po vašem mnenju dimenzije okvirja v tem primeru? Jasno je, da bo druga vrstica zagotovo visoka 100 slikovnih pik. Kako pa bo preostali prostor razdeljen po višini med tretjo in prvo vrsto?
Precej enostavno je izračunati - samo dodajte štiri (4*) dvema (2*) in delite s tem imenovalcem (spomnite se ulomkov iz šolskega kurikuluma) dva in štiri. Tisti. dobimo, da bo prvi steber z okvirjem zavzemal tretjino preostalega prostora po višini, tretji stolpec pa dve tretjini. Ali z drugimi besedami, tretji bo dvakrat višji od prvega:
Uporabite lahko vse tri načine za določanje velikosti oken z okvirji v enem atributu, na primer:
Kot rezultat bomo dobili prvi stolpec Frame s širino deset odstotkov celotne razpoložljive površine, drugi - 100 slikovnih pik, preostali trije pa bodo imeli širino v razmerju štirih, treh in dveh devetin širine. preostali prostor za širino. Torej je vse preprosto in jasno.
Če želite glavno okno razdeliti ne samo na vodoravne in navpične okvirje, ampak na primer na njihove kombinacije, potem lahko uporabite ugnezdeno strukturo elementov Frameset ločeno za stolpce in ločeno za vrstice. Če želite na primer dobiti strukturo, prikazano na spodnjem posnetku zaslona, je dovolj, da uporabite naslednjo konstrukcijo:
Tisti. najprej uporabimo “frameset cols=”20%,80%"“ za razdelitev celotnega razpoložljivega prostora v dva stolpca navpično in nastavimo vsebino desnega stolpca z oznako “frame", vendar namesto dodajanja elementa "frame" za levi stolpec odpremo nov “frameset rows=“10%,*”".
In z njegovo pomočjo razdelimo desni stolpec v dve vrstici z okvirji, katerih vsebino nastavimo z dvema oznakama “frame”, nakar zapremo oba vsebnika “frameset”. Vse je preprosto in logično.
Določite pot v atributu Src elementa Frame
Vsi pa smo govorili o elementu Frameset in njegovih atributih Cols in Rows, s pomočjo katerih oblikujemo strukturo in nastavimo njihove velikosti. Zdaj pa ugotovimo, kako prikazati potrebne dokumente v zahtevanih okvirih in kako konfigurirati interakcijo med njihovimi okni.
Kako torej nadzorujemo videz oken, ki jih ustvarimo? Vse to vsebujejo atributi oznake Frame. Prva, ki jo je vredno omeniti, je Src. To smo že videli v oznaki Img, ko smo gledali vstavljanje slik v kodo Html. Njegovo bistvo se ni spremenilo in še vedno vam omogoča, da določite pot do dokumenta, ki naj se naloži v okvir.
Pot do dokumenta v Src lahko podate kot . Relativne poti se običajno uporabljajo za dokument, ki se nahaja na vašem lastnem viru, vendar boste potrebovali absolutne poti, ko želite naložiti dokument z drugega mesta v okvirno okno.
Če atribut Src, ki označuje pot do želenega dokumenta, ni določen, se bo v okno naložil prazen dokument. Osebno sem nekoč naredil podobno stvar za svoj blog (kot dodaten navigacijski element) in hkrati ustvaril ločeno mapo zanj na gostiteljskem strežniku in tja postavil ne samo datoteko Html z okvirno strukturo (ki sem jo imenoval indeks .html), ampak tudi vse naloženo v različna okna dokumentov, kot tudi slikovne datoteke, ki so bile uporabljene kot ozadje.
Zato mi je bilo najlažje uporabiti relativne povezave v atributu Src oznake Frame:
Omeniti velja, da če zamenjate vse povezave v tej kodi iz relativnih v absolutne (kot je https://site/navigator/joomla.html) in odprete to datoteko v brskalniku, se bodo naložili dokumenti, določeni v Frameu z mojega strežnika in v brskalniku boste videli podobno sliko. Poleg tega ni pomembno, kje se nahaja vaša datoteka s strukturo okvirja (index.html) - v vašem računalniku ali na gostovanju.
V primeru, prikazanem na sliki, se stran z določenim menijem, ki je običajni meni, naloži v okno levega okvirja. Vendar ni pomembno, kako je meni oblikovan, ampak kaj se zgodi po kliku na katero koli njegovo povezavo.
Če to storite, se bo vse zgodilo točno tako, kot se mora - dokument se bo odprl v spodnjem desnem oknu. Toda za to sem moral uporabiti en majhen trik, saj se je v privzeti različici dokument odprl na celotno velikost okna in nadomestil strukturo okvirja, ki je sploh nisem potreboval, ker je navigacijski meni v levem in zgornjem okvirju izginila.
Kako odpreti dokumente preko povezave v okvirju
Torej, ko smo govorili o hiperpovezavah, smo omenili atribut oznake »A« kot Target=_blank. Se spomniš, čemu služi? Pravilno je, da povezani dokument odprete v novem oknu. Privzeto se mora odpreti v istem oknu, kar je enakovredno target="_self".
Ampak to so priložnosti Tarča niso omejeni. Izkazalo se je, da mu lahko dodate vrednost kot ime okvirja, ki je vnaprej določen v posebnem atributu Name oznake Frame. Nato se dokument prek te povezave ne bo odprl v istem oknu in zasedel ves njegov prostor, ampak v okvirju, ki ste ga določili. To je jasno? Če ne v celoti, bo postalo jasno zdaj, ko bomo analizirali primer.
Torej, vrnimo se k našemu primeru, prikazanemu na zgornji sliki. Strani moramo odpreti s povezavami iz levega okna v spodnjem desnem (velikem) okviru. Zato morate temu velikemu oknu najprej dati ime z uporabo atributa Name v oznaki Frame.
Izdelali so jo in jo poimenovali »ktona«. Zdaj lahko varno odprete datoteko, ki je naložena kot meni v levem oknu in dodate atribut Target="ktona" vsem oznakam A v njej:
Zgodovina Joomle in komponente VirtueMart
Seveda ga s pomočjo orodja za iskanje in zamenjavo ne bo težko postaviti za vse hiperpovezave, a zakaj bi po nepotrebnem nalagali kodo, ko imamo odlično priložnost za uporabo posebna osnovna oznaka, ki smo ga že omenili v istem članku o hiperpovezavah, ko smo govorili o uporabi Target blank.
Dovolj je, da osnovni element target="ktona" postavite med začetno in končno oznako Head ter vse povezave v HTML koda tega dokumenta bo odprl nove strani v določenem okviru, imenovanem "ktona":
Mimogrede, če vzamemo za primer moje nekoč obstoječe orodje, potem moramo še vedno poskrbeti, da vse povezave iz zgornjega vodoravnega okna odpirajo svoje strani v levem navpičnem okvirju, ki mi služi kot levi meni. Kaj je treba narediti za to?
No, najprej morate levemu navpičnemu okvirju dati ime:
In v datoteko, ki je naložena v zgornje okno (gor.html), morate dodati osnovni element target="gor":
To je to, zdaj smo naredili vse v redu. Vsi dokumenti, ki sledijo povezavam iz zgornjega okvirja, se odprejo v levem oknu, vse povezave iz njega pa bodo odprle dokumente v osrednjem in največjem okvirju. Po mojem mnenju je vse preprosto in logično.
Atributi oznake okvirja za prilagajanje videza oken
Poglejmo zdaj, katere atribute razen Src in Name je mogoče uporabiti v oznaki Frame za prilagajanje videza okvirjev. Začnimo z Drsenje. Z njim lahko konfiguriramo prikaz drsnih trakov za vsako okno vaše okvirne strukture posebej.
Drsenje ima privzeto vrednost Samodejno - brskalnik se bo glede na velikost dokumenta, naloženega v okvir, samodejno odločil, ali bo prikazal drsni trak ali ne. Če se dokument ne prilega v celoti oknu, se prikaže drsni trak, ki vam omogoča, da si ga ogledate do konca.
Uporabite lahko tudi vrednosti Da (drsni trakovi v oknu bodo vedno prikazani, tudi če se dokument popolnoma prilega vanj) in Ne (drsni trakovi se sploh ne bodo pojavili, tudi če se del dokumenta ne prilega) kot vrednosti za drsenje.
V svojem nekoč obstoječem orodju sem uporabil privzeto vrednost Auto in drsni trakovi v okvirjih so se pojavili po potrebi:
Naslednji atribut oznake Frame je Noresize- je enojna (nima vrednosti). Z registracijo boste s tem prepovedali spreminjanje njegove velikosti, ki se privzeto izvede s preprostim vlečenjem obrobe okvirjev z miško.
Ko premaknete kazalec miške na rob, boste videli, da se bo kazalec spremenil v dvosmerno puščico in zdaj s klikom na levi gumb miško, lahko mejo premikate po želji. Noresize prepoveduje to svojevoljnost (ko premaknete kazalec miške na rob oken, ne boste več videli dvosmerne puščice).
Drug vizualni atribut je Frameborder. Z njim lahko določite, ali želite narisati okvir (obrobo) med okvirji ali ne. Frameborder ima lahko samo dve možni vrednosti - 0 (ne nariši okvirja) ali 1 (prikaži obrobo). Privzeta vrednost je seveda 1.
Obstaja ena subtilnost. Če želite odstraniti vidno obrobo, boste morali dodati Frameborder=0 vsem oznakam okvirjev okvirjev, med katerimi želite odstraniti vidne obrobe.
No, še vedno moramo upoštevati nekaj atributov oznake Frame - Širina roba in Višina roba, ki nastavi odmik po širini (desno in levo) in višini (zgoraj in spodaj) od robov okna do vanj naložene vsebine (število pomeni število slikovnih pik oblazinjenja):
Zakaj ne morete narediti spletne strani na okvirjih?
Poglejmo, kaj je temeljna pomanjkljivost klasičnih struktur, ki v bistvu onemogoča njihovo uporabo pri izdelavi spletne strani. Sestoji iz dejstva, da glede na to okvirno strukturo njenemu stanju je nemogoče slediti.
Kompleksne strukture imajo lahko na tisoče različnih stanj (različic dokumentov, odprtih v različnih okvirnih oknih), vendar se Url naslov te strukture ne spremeni. Zaradi tega bo Zaznamkov brskalnika ni mogoče uporabiti ali pošljite povezave do svojih priljubljenih strani drugim uporabnikom. Zakaj?
Ker naslov ostane nespremenjen tudi, ko ga odprete iz zaznamkov brskalnika ali iz e-pošte E-naslov, boste dobili stran z začetnim stanjem strukture okvirja in ne s stanjem, ki bi ga radi shranili.
Čeprav je to težavo seveda mogoče rešiti, vendar ne z orodji HTML, ampak s pomočjo strežnika (na primer Php) ali odjemalskih programskih jezikov (JavaScript), in te rešitve ne bodo stoodstotno učinkovite. Takšne rešitve dejansko omogočajo dodajanje dodatnih podatkov o njegovem trenutnem stanju na Url naslov strukture okvirja, vendar to ni enostavno narediti in zanesljivost ne bo absolutna.
To je prva pomanjkljivost uporabe okvirjev za ustvarjanje spletnih mest in zelo pomembna, vendar obstaja še ena velika pomanjkljivost. Iskalniki so se seveda že dolgo naučili, da jih indeksirajo in iz njih izvlečejo naslove tistih dokumentov, ki so naloženi v njihova okna. Problem je drugačen.
Ko gre uporabnik iz rezultatov iskanja Yandex ali Google na vaše spletno mesto, zgrajeno na podlagi okvirne strukture, se odpre le dokument, ki je bil naložen v enega od okvirjev, in ne celotne strukture. Ali razumeš o čem govorim?
Uporabnik bo videl dokument in ne bo videl navigacije na vašem spletnem mestu, ker bo zaščiten v drugih oknih in se nalagajo samo kot del celotne strukture.
Kot rezultat, spletno mesto, zgrajeno na okvirjih, preprosto postane neuporabno. Čeprav spet obstajajo rešitve za to težavo na podlagi strežniških skriptov, ko bo preusmeritev izvedena z naslovov posameznih dokumentov na okvirno strukturo, ki je v želenem stanju, vendar je to spet zelo težko in ne vedno zanesljivo.
Na splošno je mogoče sklepati nedvoumno - Spletnih strani ni treba ustvarjati na okvirjih. Nenehno pa se uporabljajo za ustvarjanje pomoči za različne aplikacije, prav pa lahko pridejo tudi pri drugih malenkostih.
Ustvaril sem na primer strukturo okvirja, ki sem jo poimenoval »Navigator« (zdaj je bil začasno odstranjen) in je postal nekakšen razširjen zunanji meni za moj blog, kar bi, po mojem mnenju, moralo poenostaviti delo z virom in zato izboljšati "brez neumnosti" imajo zelo, zelo močan vpliv na promocijo spletnega mesta.
Vendar, da bi se izognili kakršnim koli težavam z Iskalniki, sem celotno strukturo okvirja zaprl pred pogledom in za vsak slučaj dodal tudi metaoznako Rodots vsem njenim datotekam Html, s čimer sem prepovedal njihovo indeksiranje:
JOOMLA
Toda vse te omejitve veljajo samo za strukture na oznakah Frame in Frameset ter vdelani okvirji na oznakah iframe nimajo vidnih napak in jih lahko in celo morate uporabiti pri svojih projektih, vsaj za vstavljanje videoposnetkov iz YouTuba.
Srečno! Kmalu se vidimo na straneh spletnega dnevnika
Morda vas bo zanimalo
Navodila za komentiranje in Doctype v kodi Html ter koncept blokovnih in vgrajenih elementov (oznak) Embed in object - Html oznake za prikaz medijskih vsebin (video, flash, audio) na spletnih straneh Img - Html oznaka za vstavljanje slike (Src), poravnavo in oblivanje besedila okoli nje (align), kot tudi nastavitev ozadja (background) Kaj je hiperbesedilni označevalni jezik Html in kako si ogledati seznam vseh oznak v validatorju W3CSelect, Option, Textarea, Label, Fieldset, Legend - oznake obrazci HTML spustni seznami in besedilno polje Seznami v Html kodi - oznake UL, OL, LI in DL Pisava (obraz, velikost in barva), narekovaji in oznake Pre - podedovano oblikovanje besedila v čisti HTML(brez uporabe CSS) Kako so barve nastavljene v kodi Html in CSS, izbira odtenkov RGB v tabelah, izpis Yandex in drugi programi