Slik setter du inn en iframe i HTML: eksempel på bruk. Hvordan lage en side med rammer Lage rammer for nettsider i html
Ha en fin dag alle sammen! Andrey Bernatsky er med deg.
Før jeg går direkte til artikkelen, vil jeg gjerne gi deg en lenke til videoversjonen av dette emnet:
I denne episoden skal vi snakke om rammer i HTML. Rammer i hovedsak ligner de veldig på tabeller, men i motsetning til tabeller er hver ramme uavhengig og hver av dem kan ha en egen nettside med sin egen adresse.
I figuren ser vi en ganske vanlig stedstruktur. Det kan presenteres i form av en tabell, eller alt dette kan gjøres ved hjelp av rammer. I den øverste rammen kan du laste en side med logo og meny, i venstre ramme kan du laste en side med nettstedsnavigering, i den sentrale rammen vil det være en side med hovedinnholdet på nettstedet, i høyre ramme kan du kan laste en side med reklamebannere, og i bunnrammen kan du laste en side med kontaktinformasjon. Her er hva rammer er i et nøtteskall.
La oss nå se på hvordan alt dette kan gjøres.
Det særegne med et dokument som inneholder rammer er at det ikke inneholder en beholder KROPP. En beholder brukes i stedet RAMMESETT. Den generelle syntaksen for rammer er som følger:
XHTML
…
…
|
I en container taggene er plassert , som definerer innholdet i rammer.
Ved lappen det er to parametere:
rader = tall– antall linjer (horisontale terskler).
cols = tall– antall kolonner (vertikale terskler).
Generelt sett spesifiseres verdiene til rad- og kolonneparametrene ikke nøyaktig med tall, men ved å liste tallene atskilt med komma. Så mange tall som det er, vil det være like mange rader eller kolonner, og tallene bestemmer størrelsen på rammen. Det viktigste er at summen av disse tallene er hele bredden på skjermen.
La oss se på dette med et eksempel, og alt vil være klart. La oss nå lage et rammedokument som dette:
Koden som vil definere denne rammestrukturen for oss vil se slik ut:
XHTML
Den første linjen i koden ovenfor åpner rammesettbeholderen, cols-parameteren indikerer at det vil være tre nestede rammer. Den første vil ha en bredde på 30 % av hele skjermens bredde. Den tredje vil også ha 30 % av hele skjermens bredde. Og den andre rammen vil ta opp all gjenværende plass. Ja-symbol "*" (stjerne) betyr å ta opp all gjenværende plass på skjermen.
La oss forresten se på hvordan rammer kan settes i parametrene for kolonner og rader:
Du kan stille inn størrelsen ved å skrive inn et tall. Dette tallet vil bestemme størrelsen på rammen i piksler.
Du kan angi bredden i prosent. I tillegg, hvis summen av prosentene av alle kolonner overstiger 100 %, vil alle rammer reduseres proporsjonalt slik at den totale summen er lik 100 %. Situasjonen vil være lik: hvis summen av prosentene av alle kolonner er mindre enn 100 %, vil alle rammer øke proporsjonalt slik at den totale summen er lik 100 %.
Du kan stille inn rammestørrelsen med et symbol “*” (stjerne). Dette betyr at rammen må ta opp all gjenværende plass. Hvis spesifisert, for eksempel , det vil si to stjerner, så vil all gjenværende plass deles likt mellom disse to rammene (i dette tilfellet 40%).
Du kan kombinere alternativer for å angi rammestørrelser i HTML. For eksempel:
XHTML
.Hvis vi erstatter parameteren cols med rader i den første kodelinjen, får vi det samme rammedokumentet som består av tre rammer. Kun inndelingen i rammer vil være vertikal.
XHTML
|
Alternativer rader Og cols kan ikke brukes samtidig. Dette fører til feil og feil visning av innhold.
Alle har nå et spørsmål om hvordan man lager en slik struktur, som jeg snakket om helt i begynnelsen av artikkelen. Vi kommer tilbake til dette litt senere, men la oss nå gå til hva som skjer i nettleseren vår nå.
I nettleseren ser vi tre sider, som hver er i sin egen ramme.
Samtidig, ved å flytte musepekeren til rammene, kan vi endre størrelsen på rammene, og kanter mellom rammene er også synlige. Dette er ikke alltid nødvendig, faktisk er det ikke nødvendig i det hele tatt. Og alt dette kan kontrolleres takket være tag-parametere ramme Og rammesett.
Tag alternativer ramme Og rammesett:
src="url"– nødvendig parameter. Angir adressen til siden som skal vises inne i rammen. Brukes kun til ramme.
noresize– avbryter muligheten til å endre størrelse. Kun brukt til ramme.
scrolling="ja/nei/auto"– bestemmer tilstedeværelsen av rullefelt. Verdien ja – indikerer tilstedeværelsen av rullefelt. Verdien no indikerer at det ikke vil være noen rullefelt. Når satt til auto, bestemmer nettleseren selv om det skal være rullefelt. Kun brukt til ramme.
name="rammenavn"– rammenavn. Denne parameteren brukes for interaksjon mellom rammer. Vi snakker mer om det litt senere. Kun brukt til ramme.
kantlinje=nummer– tykkelsen på kantene mellom rammer. Hvis den tar verdien 0, vises ikke grensene mellom rammer. Brukes kun til rammesett.
framespacing="nummer"– avstand mellom rammer. Brukes kun til rammesett.
Ved å bruke disse parameterne kan du få en side der grensene mellom rammer ikke vises, det er ingen måte å endre størrelsen på rammene på, og rulling er forbudt for de to siste rammene. Koden for en slik side ser slik ut:
XHTML
|
Det er noen få andre alternativer, men de fungerer ikke helt klart, så jeg tror det er fornuftig å ikke engang nevne dem i utgivelsen.
Kanskje det er alt med parametrene. Vi så på et eksempel på hvordan de kan brukes.
La oss nå lage rammestrukturen som jeg snakket om helt i begynnelsen av utgivelsen.
For å gjøre dette lager vi en struktur med tre rammer delt vertikalt.
XHTML
Følgelig, i stedet for taggen
, må vi sette inn en annen beholder
XHTML
"../lesson3/Untitled-1.html" />
|
Etter dette setter vi inn vår tredje ramme med kontaktinformasjon og lukker hovedbeholderen
XHTML
|
Den fullstendige koden for denne siden er nedenfor:
XHTML
"../lesson3/Untitled-1.html" />
|
Jeg tok selvfølgelig adressene til rammene fra tidligere utgaver av nyhetsbrevet, og vi så ingen meny, logo, navigasjon osv. her. Men vi fikk den strukturen vi trengte. Men hvis du lager de faktiske sidene du trenger, kan du få en vakker struktur.
Hva vi fikk til slutt. Om dette er praktisk eller upraktisk er opp til deg å avgjøre, men med en rammestruktur forblir alle våre rammer alltid på siden. Uavhengig av størrelsen på innholdet, vil vi alltid se nettstedets logo og meny, bunnen av nettstedet med kontaktinformasjon, navigasjonsblokken og bannere. Dette er generelt essensen og betydningen av rammer.
Det er mulighet for interaksjon mellom rammer. Du kan gjøre det slik at ved å klikke på en lenke i en ramme, vises informasjonen i en annen. Nå skal vi se hvordan dette gjøres.
La oss lage en ramme som dette:
Våre lenker vil være plassert i venstre ramme. Og til høyre er sidene som disse koblingene fører til.
La oss lage en ramme som dette:
XHTML
Du har sikkert hørt mer enn en gang om et slikt konsept som rammer. Du kan lese om dem i en hvilken som helst html-lærebok, så vel som på ressurser for å lage nettsider. Etter å ha studert mange eksempler og beskrivelser, bestemte jeg meg for å fortelle alt om rammer med mine egne ord på en veldig enkel måte. Fordeler, ulemper og fremtiden til rammer vil bli diskutert helt nederst på denne siden. Så, hva er rammer i html?
Hva er rammer i html
Ramme(Engelsk ramme) - noe tilkoblingsbart uavhengig område på en nettside.
Ikke vær redd for at dette høres litt forvirrende ut. La oss umiddelbart gi det enkleste eksemplet, og da vil alt bli klart.
Åpne hjelp i et hvilket som helst program (det kan være notisblokk, et eller annet program, nettleser osv.). Nesten alltid vil du se en hjelp som består av to deler (navigasjon til venstre, innhold til høyre). Venstre og høyre deler er bare separate rammer. Nedenfor er et skjermbilde tatt ved hjelp av den mest vanlige Windows-notisblokken:
Fig. 1. Bruk av rammer ved hjelp av notatblokkhjelpen som eksempel
Det du ser er en nettside som består av to separate uavhengige rammer. Her er et eksempel på html-kode for en slik ramme fra hjelpen.
Eksempel med rammer nr. 1 (doing help)
I rammeverket ovenfor vil hjelpen diskutert ovenfor se slik ut:
Fig 2. Rammeverk for bruk av rammer for eksempel nr. 1
Å dele opp en side i områder ved hjelp av rammer er veldig lik HTML-tabelllayout (se HTML-tabell-tag). Et eksempelkode for en slik side kan se slik ut:
Forklaring for eksempel nr. 1Eksempel nr. 1 på en html-side med rammer
Som du kan se fra koden ovenfor, er en side laget av rammer veldig lik en vanlig html-side: det er en åpnings-html-tag, en seksjon
, tittelDen siste helt valgfrie taggen er
Vær forresten oppmerksom på det for taggen ingen lukkebrikke nødvendig.
Jeg håper at du nå har en idé om rammer. For å forstå vanskeligere eksempler, la oss prøve å lage en enkel html-side som består av 4 rammer. Dette vil være eksempel #2.
Eksempel med 4 rammer #2
Rammeverk for eksempel 2:
Fig 3. Rammeverk for bruk av rammer for eksempel nr. 2
Koden til den originale HTML-siden med rammen vil være som følger:
Eksempel nr. 2 på en html-side med rammer Nettleseren din støtter ikke visning av rammer
Top.html filkode
Fil top.html - sideoverskrift Eksempel nr. 2
Og her kan det være en logo og mer :)
Menu.html filkode
File menu.html - sidemeny
Content.html filkode
Fil content.html – innhold på nettstedet Hjemmeside
Nettstedets innhold. Content.html-filen er nå åpen
Dette er starttilstanden til rammen vår. La oss kalle denne filen "Master Page"
Filkode about-site.html
Fil about-site.html – Side om nettstedet Om nettstedet
Side om nettstedet. Filen about-site.html er nå åpen
Filkode about-autor.html
Fil om-autor.html - om forfatteren om forfatteren
Om forfattersiden. Filen about-autor.html er nå åpen
Footer.html filkode
Forklaring for eksempel nr. 2Fil footer.html - om nettstedet Nettsidebunntekst. Filen footer.html er nå åpen
Til å begynne med er hele siden delt inn i tre områder horisontalt i forholdet 3:14:3. Attributten rows="15%,70%,15%" er ansvarlig for dette. Den første rammen i vårt eksempel er overskriften (vi kalte den top.html), 15 % av høydeplassen er allokert til den. Deretter kommer en stor ramme som opptar 70 % av høyden. Vi deler den i to deler ved å bruke cols="25%,75%" i forholdet 1:3. Til venstre vil det være en ramme menu.html, til høyre content.html. Vi ga spesifikt navnet på den andre rammen = "main" for å kunne bytte side. Merk at i menu.html-filen har hver lenke et target="main"-attributt knyttet til seg, som gjør at elementene kan lastes inn i et område som kalles main når lenken klikkes. Nederst på nettstedet er den siste rammen footer.html.
Hvis du implementerer eksempel nr. 2, bør du få følgende HTML-side i sin opprinnelige tilstand:
Fig 4. Eksempel nr. 2 - starttilstand
Når du går til om-siden på nettstedet, vil siden se slik ut:
Fig 5. Eksempel nr. 2 - andre tilstand
Fig 6. Eksempel nr. 2 - tredje tilstand
stikkord
stikkord
De valgfrie attributtene til denne taggen er width="width" og height="height" , og det nødvendige attributtet er src="frame address" .
Tag attributter og egenskaper
1. COLS attribute="Parameters"
Angir antall vertikale sidedelinger.
2. ROWS="Parameters"-attributt
Angir antall horisontale sidedelinger.
La oss nå se på hvordan du kan angi partisjoneringsparametrene.
a) Bruk tallet, som vil tilsvare antall piksler. For eksempel, cols = "100 100 300" setter siden til å deles inn i tre områder, som hver vil være henholdsvis 100 piksler, 100 piksler og 300 piksler bred.
b) Bruker prosenter av total bredde/høyde. I eksemplene omtalt ovenfor brukte vi prosentdeling, så det virker meningsløst å gi et eksempel.
c) Bruk * (stjerne). For eksempel setter cols = "2*,3*,100" de to første områdene til et 2:3-forhold, og det tredje området til å være 100 piksler bredt.
Alle tre metodene kan kombineres. For eksempel cols="2*,100,15%,4*" .
3. Frameborder="(yes|no)"-attributt
Bestemmer om en ramme har en kantlinje. Hvis svaret er ja, er det neste fjerde grenseattributtet i kraft.
4. Attributt border="parameter"
I piksler angir kantlinje kanttykkelsen på rammeområdet. For eksempel spesifiserer frameborder = "2" et område med en valgt kontur på 2 piksler.
5. bordercolor="color" attributt
Angir fargen på kantlinjen, hvis det er en. Fargen kan spesifiseres enten i ord eller i kode (se html fargepalett).
Merk: Vær oppmerksom på at taggen
Tag attributter og egenskaper
1. Attributt src="elementadresse"
Den fullstendige URL-en til elementets adresse må angis som en parameter her. Dette attributtet er obligatorisk. Han er allerede kjent for deg, fordi... den var til stede i eksempel 1 og 2.
2. Attributt marginwidth="nummer"
Angir bredden på fordypningen inne i rammen fra kantene i piksler. For eksempel vil marginwidth="10" sette innholdsmargen til venstre og høyre for rammekanten.
3. Attributt marginhight="nummer"
Ligner på den andre med den eneste forskjellen at den setter høydeforskyvningen.
4. Scrolling="(yes|no|auto)"-attributt
Angir muligheten til å rulle rammen hvis den ikke passet innenfor området som er tildelt den. Standardverdien er auto (betyr opprette en rull om nødvendig).
5. Noresize-attributt
Hvis dette attributtet er satt, har brukeren forbud mot å endre rammegrensene på egen hånd. Som standard er ikke dette attributtet satt, og brukeren kan endre grensene som han vil.
5. Attribut name="title"
Dette attributtet kan brukes til å gi rammen et navn. Dette er nødvendig for at andre rammer skal få tilgang til denne rammen. Eksempel nr. 2 omhandler nettopp en slik sak.
Merk:
Navnet må ikke begynne med et understrek «_».
6. Attributter rammekant, kant og kantfarge
Disse tre attributtene er de samme som rammesett (se rammesettattributter ovenfor).
Fordeler og ulemper med rammer
Fordeler med rammer
- Muligheten til å vise flere sider uavhengig i ett vindu (eksempel 1 og 2 ovenfor);
- Evne til å bytte sideinnhold uten å laste inn siden på nytt (bare ett område på skjermen endres);
- Muligheten til fleksibelt å bygge en sidestruktur (topptekst, meny, bunntekst, etc. - all statisk informasjon lagres separat i filer, og dette lar deg raskt redigere deler av nettstedet);
- Brukeren kan selv endre størrelsen på viewporten hvis noresize-alternativet ikke er satt;
Ulemper med rammer
- Søkemotorer indekserer innrammede nettsteder dårlig fordi de ikke er i stand til å tolke de lastede filene i rammer. Søkemotoren skiller sider ved deres adresse (URL), og for rammer, til tross for forskjellige tilstander, endres ikke sideadressen. Dette er i strid med søkemotorens regler, noe som betyr at det ikke er et faktum at søkemotoren vil kunne indeksere nettstedet.
- Det er umulig å bokmerke et nettsted i rammer, fordi Nettadressen til siden vil være den samme. Dermed kan du bare bevare den opprinnelige tilstanden til rammen.
- Ikke alle nettlesere støtter rammer.
Framtiden til rammer:
Mange nettredaktører har for lenge siden begynt å forlate rammer. Dette er på grunn av vanskelighetene med markedsføring i søkemotorer. Nå bytter alle til Ajax som en mer dynamisk og moderne måte å vise informasjon på én side av nettstedet.
Kjære leser, vi har sett på HTML-dokumenttaggene knyttet til rammer. Til tross for den tvilsomme fremtiden til dette området, bør enhver nettredaktør vite om rammer.
La oss starte med rammestrukturen. Hva er dens essens? Vi har muligheten til å organisere spesielle vindusområder i dokumentet som vi laster inn i nettleseren. Du kan laste opp andre individuelle dokumenter (websider) til disse områdene.
Hvorfor er dette nødvendig? Siden dokumenter lastes inn i sine egne separate områder, oppfører de seg uavhengig. Det vil si at du kan gjøre noe i ett dokument, mens andre dokumenter forblir uendret.
Hvor finner man slike rammekonstruksjoner? Dette er hjelpefiler (med filtypen .chm).
Her er et enkelt eksempel på et dokument med rammer:
Element rammesett. Dens jobb er å dekke visningsområdet og dele det inn i separate områder. De. instruer nettleseren i hvilket forhold og hvordan (horisontalt eller vertikalt) vi deler disse områdene.
Element ramme– beskriver hvert enkelt slikt område. Enkelt merke. Den opptar dimensjonene spesifisert i rammesettet.
Element ingen rammer- vises hvis nettleseren ikke støtter rammer.
Legg merke til at det ikke er noe kroppselement. Frameset-elementet brukes i stedet. Dette er en av grunnene til at rammer ikke lenger brukes på nettsider.
Rammesettelementattributter
- cols - vertikal inndeling av siden i visningsområder.
- rader - horisontal inndeling av siden i visningsområder.
rammeelement
Dette elementet beskriver et enkelt vindusområde. Du kan laste inn et hvilket som helst dokument ved å bruke src-attributtet. Eksempler:
Egenskap rulling- rulling (automatisk som standard). Hvis dokumentet overskrider visningsområdet til denne rammen, skjer rulling. Hvis dokumentet passer helt innenfor rammen, er det ingen rulling. Rulling kan deaktiveres, men det er bedre å la det stå på auto.
Enkelt attributt noresize- forbyr endring av rammestørrelsen i nettleseren. Som standard er dette tillatt.
Egenskap ramme grense- bilde for bilde. Verdi '1' - trekk, verdi '0' - ikke trekk. Bare disse to verdiene er gyldige. Som standard er rammen tegnet.
Egenskap marginbredde– indikerer avstanden som innholdet i en gitt ramme vil avta horisontalt fra rammene i denne rammen.
Egenskap marginhøyde– vertikal innrykk fra innholdet til rammens kant.
Innebygd iframe
Element iframe(‘linjevindu’). Dette elementet er paret (det er en åpnings- og lukkingskode). Dette elementet tjener samme formål - å organisere et vinduselement i dokumentet.
Hvordan er den forskjellig fra de gamle rammene? Den er selvforsynt og trenger ingen ekstra beholdere. Og det kan vises i alle dokumenter, så der det er et kroppselement.
Et iframe-element er et innebygd element med utskiftbart innhold. De. det dannes et område med linjetype med eventuelle abstrakte dimensjoner, og innholdet i et eksternt dokument (html-fil) lastes inn i dette området.
Iframe har de samme attributtene som bilder (siden de er av samme type): navn, bredde, høyde, src, frameborder, rulling, hspace, vspace, marginwidth, marginheight.
Rammer er HTML-elementer som lar deg dele et nettleservindu i flere uavhengige vinduer, som hver kan laste inn et separat HTML-dokument. Hvert slikt vindu (ramme) kan ha sine egne rullefelt og fungere uavhengig av andre uavhengige vinduer eller tvert imot kontrollere innholdet. De kan brukes til å organisere en meny som hele tiden er plassert i ett vindu, mens selve informasjonen ligger i et annet vindu. Brukere kan få tilgang til menyen når som helst og trenger ikke gå tilbake til forrige side for å velge et annet menyelement. Ved å bruke rammer kan du "feste" bilder eller andre statiske grensesnittelementer til nettleservinduet mens resten av siden ruller innenfor rammen.
Det er imidlertid verdt å merke seg at i disse dager anses rammer som et utdatert verktøy, og nettsteder med rammer anses nå som uverdige, siden profesjonelle webmastere aldri bruker rammer i sine prosjekter. Rammer har en rekke beryktede problemer. De forvirrer søkemotorer, for eksempel fordi sidene som inneholder innholdet ikke lenker til andre dokumenter. Hvis du ønsker å få besøkende fra søkemotorer, glem rammer. Det er umulig for en bruker å plassere en side han liker i bokmerkedelen av nettleseren, siden rammer skjuler adressen til siden han befinner seg på og viser alltid bare nettstedsadressen. Av denne grunn skaper de problemer for nettlesere når de sporer historikk, og de er heller ikke særlig tilpasningsdyktige til ulike skjermstørrelser og mobile enheter.
Til tross for at prosjekter med rammer blir stadig mer sjeldne på World Wide Web, ville læring av HTML være ufullstendig uten å ta hensyn til temaet rammer. Rammer, sammen med deres ulemper, har også noen fordeler som ikke tillater oss å avfeie denne teknologien som lite lovende.
Opprette rammer
Strukturen til et HTML-dokument med rammer er veldig likt utseendet til formatet til et vanlig HTML-dokument. Som i et vanlig HTML-dokument, plasseres all kode mellom sammenkoblede tagger
Og
, og i beholderen
overskrifter er plassert. Hovedforskjellen mellom et dokument med rammer og et vanlig HTML-dokument er at et dokument med rammer i stedet for en kode
sammenkoblet tag er brukt
Følgende eksempel viser strukturen til et HTML-dokument med rammer:
Eksempel: HTML-dokumentstruktur med rammer
- Prøv selv"
frame_top | |
frame_left | frame_right |
I eksemplet ovenfor inneholder siden tre områder, som hver i utgangspunktet er lastet med HTML-dokumenter frame_top.html, frame_left.html og frame_right.html. I tillegg til HTML-dokumenter kan en ramme også inneholde grafikk. For å gjøre dette må du spesifisere adressen til det tilsvarende bildet i attributtet src, For eksempel src="image.gif". Vær oppmerksom på at elementet
brukt uten lukkebrikke.
Inne i beholderen
stikkord
- rader— beskriver hvordan du deler en side i linjer:
- cols— beskriver hvordan en side er delt inn i kolonner:
I attributtverdien rader Og cols Det er nødvendig å angi ikke antall rader eller kolonner, men bredden og høyden på rammene. Alle verdier i listen er atskilt med komma. Dimensjoner kan angis i absolutte enheter (piksler) eller prosenter:
- cols="20%, 80%"– nettleservinduet er delt inn i to kolonner ved hjelp av attributtet cols, den venstre kolonnen tar opp 20 %, og den høyre 80 % av nettleservinduet.
- rows="100, *" Nettleservinduet er delt inn i to horisontale vinduer ved hjelp av attributtet rader, det øverste vinduet tar opp 100 piksler, og det nederste vinduet tar opp gjenværende plass spesifisert av stjernesymbolet.
Som det fremgår av dette eksemplet, er beholderen
Hvis nettleseren ikke støtter rammer, vil vinduet vise tekst mellom taggene
Som allerede nevnt, brukes en uparet tag for å sette inn en separat ramme i et dokument
. Egenskap src angir dokumentet som skal vises innenfor denne rammen, for eksempel: . Hvis attributt src mangler, vises en tom ramme.
Kanter eller mellomrom mellom rammer
Som standard viser nettleseren en grå, vanligvis 3D-linjekant mellom rammer som besøkende kan bruke til å justere størrelsen på rammen.
Rammekanten kan manipuleres som alle andre rammeelementer. Det er flere elementattributter for dette
For å skjule en rammes kant, må du enten sette grensebreddeverdien til null eller sette verdien "nei" eller "0" til attributtet ramme grense. Egenskap ramme grense kan bare ha to motsatte betydninger. Hvis attributtverdien ramme grense er lik "ja" eller "1", vil rammekanten vises, og hvis "0" eller "nei", så ikke. Vær oppmerksom på at attributtverdier ramme grense varierer for ulike nettlesere. For å løse dette problemet, bruk attributtet to ganger ramme grense, og for noen nettlesere må du også legge til attributtet rammeavstand med verdien "0":
I følgende eksempel fjerner vi grensen mellom rammer:
Eksempel: Fjerning av rammen mellom rammer
- Prøv selv"
frame_left | frame_right |
Hvis du fjerner grensen mellom rammer, vil besøkende ikke kunne endre størrelsen på rammen i nettleseren. Du kan også forhindre at rammen endrer størrelse ved å bevare kantlinjene ved å bruke attributtet noresize:
Bruker attributt grensefarge Du kan endre fargen på rammekanten, du trenger bare å spesifisere koden eller det tilsvarende reserverte fargenavnet.
Nedenfor er et eksempel på en HTML-side som inneholder rammegrensekontrollattributtene beskrevet ovenfor: kantfargen er rød, størrelsen på topprammen kan ikke endres:
Eksempel: Frame Border Control
- Prøv selv"
frame_top | |
frame_left | frame_right |
Hvis du vil plassere siden som vises inne i rammen nærmere kantene, eller omvendt flytte den lenger unna, endre attributtene marginhøyde Og marginbredde stikkord . Egenskap marginhøyde definerer polstringen mellom rammens innhold og dens topp- og bunnkanter. Syntaks:
Egenskap marginbredde definerer polstringen mellom rammens innhold og høyre og venstre kant. Syntaks:
Denne html-linjen, for eksempel, plasserer den viste siden nær rammen:
Hvis siden viser en rullefelt du ikke vil ha, kan du løse problemet ved å spesifisere attributtet rulling="no" i taggen . Men husk at hvis rammen ikke er stor nok til å vise hele innholdet på siden, vil den besøkende ikke ha noen mulighet til å rulle den viste siden.
Lenker inne i rammer
Å følge en lenke i et vanlig HTML-dokument gjøres på følgende måte: klikk på lenken og det gjeldende dokumentet erstattes med et nytt i gjeldende eller i et nytt nettleservindu. Når du bruker rammer, skiller lasteskjemaet for HTML-dokumenter seg fra det vanlige, og hovedforskjellen er muligheten til å laste et HTML-dokument inn i en ramme fra en annen ramme.
For å laste et dokument inn i en bestemt ramme, bruk attributtet mål stikkord
. Som en attributtverdi mål navnet på rammen som dokumentet spesifisert av attributtet skal lastes inn i, brukes Navn stikkord
. Det er også verdt å merke seg at rammenavnet må begynne med enten et tall eller en latinsk bokstav. Følgende navn brukes som reserverte navn:
For eksterne lenker bør du sette target-attributtet til enten _top eller _blank for å sikre at tredjepartsprosjekter ikke vises i rammene dine, men heller fyller hele nettleservinduet.
Følgende eksempel viser et HTML-dokument der den høyre rammen laster en side fra en kobling plassert i den øverste rammen. Link til dokumentet som åpnes i høyre ramme:
Den høyre rammen får et navn frame_right:
For å laste et dokument inn i en spesifisert ramme, bruk konstruksjonen target="frame_right", som vist i eksempelet:
Eksempel: Link til en annen ramme
- Prøv selv"
Nettleseren din viser ikke rammer
Flytende rammer
Element (en forkortelse av det engelske begrepet "flytende ramme") lar deg bygge inn et separat HTML-dokument eller annen ressurs hvor som helst på en nettside. Innholdet i en flytende (innebygd) ramme kan være en hvilken som helst HTML-side, enten fra ressursen din eller fra et annet nettsted. Som du allerede har forstått, opprettes inaktive rammer ved hjelp av elementet , som, i motsetning til taggen
ikke satt inn mellom tagger
I element du kan bruke de samme attributtene som for rammen , bortsett fra attributtet noresize— i motsetning til vanlige rammer, kan innebygde rammer ikke endre størrelse på skjermen:
Egenskap | Beskrivelse |
---|---|
src | brukes til å spesifisere URL-en til siden som skal vises i rammen |
høyde | angir høyden på det flytende rammevinduet i piksler eller % |
bredde | angir bredden på det flytende rammevinduet i piksler eller % |
Navn | navnet på rammen som den kan nås med i lenker |
ramme grense | setter innrammingen for rammer, kan ta verdiene 1 (det er en innramming) eller 0 (ingen innramming) ( Støttes ikke i HTML5) |
marginbredde | polstring til venstre og høyre fra innholdet til rammens kant ( Støttes ikke i HTML5) |
marginhøyde | innrykk over og under fra innholdet til rammens kant ( Støttes ikke i HTML5) |
rulling | bestemmer typen rullefelt for rammen og tar verdiene ja (det er stolper), nei (ingen stolper) og auto (felter vises om nødvendig) ( Støttes ikke i HTML5) |
tillat fullskjerm | Lar rammen gå inn i fullskjermmodus |
hspace | Horisontal marg fra ramme til omkringliggende innhold |
vspace | vertikalt rom fra ramme til omkringliggende innhold |
tilpasse | definerer rammejustering |
I følgende eksempel er dimensjonene til den flytende rammen spesifisert i piksler, men du kan også spesifisere dem i %:
Før du bruker rammer i praksis, ville det ikke skade å finne ut hva de er, samt fordelene ved å bruke rammer for å organisere informasjon på nettsider sammenlignet med de samme tabellene.
Alle eksemplene tidligere i boken så på justering av tekst, grafikk, tabeller og annet innhold i HTML-dokumenter i et nettleservindu. Den kan imidlertid vise innholdet i bare ett dokument. Ved å bruke rammer kan du dele opp nettleservinduet i flere deler, der forskjellige HTML-dokumenter kan vises. For eksempel, som vist i fig. 8.1.
Ris. 8.1. Tre dokumenter i ett vindu
I dette tilfellet er innholdet i hvert dokument justert i forhold til sin egen vindu - ramme. Tenk deg nå at den øvre venstre rammen inneholder koblinger til nettstedsressurser, den nedre venstre inneholder noe reklame eller annen informasjon, og den store høyre rammen inneholder tekst. La oss si at når du navigerer på et nettsted, endres bare teksten som vises i høyre ramme. I dette tilfellet tillater bruken av rammer følgende.
Rull gjennom innholdet i noen rammer uavhengig av innholdet i andre.
Naviger mellom nettstedssider, last bare inn innhold i høyre ramme. Dette sparer brukeren tid, siden det statiske innholdet på siden kun lastes ned fra serveren én gang.
Nå som du har blitt kjent med rammer, kan du se på hvordan nettsteder opprettes og konfigureres ved hjelp av rammer.
8.2. Opprette et rammesett
Selv det enkleste nettstedet vist i fig. 8.1, består av fire HTML-dokumenter. Innholdet i tre av dem vises i nettleservinduet. Det fjerde dokumentet, som må åpnes av nettleseren, inneholder beskrivelser av rammene som vinduet er delt inn i, og inkluderer også instruksjoner til nettleseren hvorfra sider skal lastes inn i de opprettede rammene. Innholdet i HTML-dokumentet er vist i eksempel 8.1.
Eksempel 8.1. RammebeskrivelsesfilNettside med rammer
Her kan du se to nye HTML-elementer: FRAMESET og FRAME. Den første brukes til å dele nettleservinduet eller overordnet rammevindu i separate rammer. FRAMESET-elementet er spesifisert av sammenkoblede tagger
Cols - en liste over breddeverdier for de opprettede rammene (både absolutte verdier i piksler og prosenter, så vel som proporsjonale, kan brukes, se eksempel 8.1);
Rader – liste over høydeverdier for opprettede rammer (verdier ligner på verdiene til cols-attributtet).
Du kan angi verdiene til bare ett av attributtene. Dessuten, hvis bare col-attributtet er angitt, vil de opprettede rammene oppta hele høyden på nettleservinduet. Hvis bare rows-attributtet er angitt, vil de opprettede rammene oppta hele bredden av nettleservinduet. Hvis begge attributtene er angitt, opprettes rammer fra venstre til høyre og topp til bunn.
Mellom tagger
Navn – spesifiserer navnet på rammen, slik at den kan brukes som en målramme i hyperkoblinger;
Src – URI for dokumentet hvis innhold vises i rammevinduet;
Noresize – boolsk attributt som blokkerer muligheten til å endre størrelse på rammevinduet;
Rulling – lar deg vise eller skjule rullefelt i et rammevindu, kan ta verdiene ja (vis rullefelt), nei (ikke vis rullefelt) eller auto (standard: vis rullefelt bare hvis innholdet ikke gjør det) passer inn i vindusrammen);
Frameborder – indikerer om nettleseren skal vise rammevindusrammen, kan ta verdier 1 (rammen er vist som i fig. 8.1, brukt som standard) eller 0 (rammen vises ikke);
Marginhøyde – angir den vertikale avstanden mellom kantene og innholdet i rammen.
Konseptet med nestede rammer ble berørt tidligere. Nå er det på tide å se på rammehekking i detalj. I HTML kan rammer nestes i hverandre et hvilket som helst antall ganger. Dette brukes når du trenger å dele et nettleservindu, for eksempel, som gjort i fig. 8.1. Studer følgende avsnitt nøye.
Dette skaper et ytre sett med to rammer som opptar hele høyden på nettleservinduet. Dette skaper et nytt rammesett i venstre ramme av det ytre settet. Det skal bemerkes at blokken
Det er en mer bemerkelsesverdig forskjell i rammesettdokumentet - det har ikke en kropp (BODY-element). Et slikt dokument har ikke lov til å inneholde annet innhold enn rammesettdefinisjonen.
8.3. Nye hyperkoblingsfunksjoner
Nesten helt i begynnelsen av dette kapittelet ble det sagt at du ved hjelp av rammer kan organisere nettstednavigering på en slik måte at bare nødvendig informasjon vil bli lastet ned fra serveren, og alle statiske deler (for eksempel en liste over nettstedkoblinger, nettstednavn osv.) vil bli gjenstand for endringer eller omstart fra serveren. Denne muligheten oppnås ved å spesifisere en målramme for hyperkoblinger, når du klikker på hvilken det er nødvendig å endre bare innholdet i en av rammene.
Målramme for individuelle hyperkoblinger
Målattributtet brukes til å spesifisere målrammen for hver hyperkobling, det vil si rammen der innholdet i HTML-dokumentet som åpnes av koblingen vil bli vist. Verdien til dette attributtet kan enten være navnet på den ønskede rammen (verdien til den rammens navneattributt) eller en av følgende forhåndsdefinerte strengverdier:
Blank – åpne dokumentet i et nytt vindu;
Selv – åpne dokumentet i samme vindu der hyperkoblingen er plassert;
Foreldre – åpne dokumentet i vinduet til overordnet ramme (samme som _selv, hvis rammen der hyperkoblingen er plassert ikke har en overordnet);
Topp – erstatter innholdet i nettleservinduet med innholdet i dokumentet som åpnes, og forkaster alle tidligere opprettede rammer.
Målattributtet støttes for alle HTML-elementer som lar deg lage hyperkoblinger: A, LINK, AREA.
Nå, for å konsolidere kunnskapen vi har fått, vil vi omarbeide dokumentet fra eksempel 7.11 i forrige kapittel, og plassere lenker, navnet og teksten til nettstedet i separate rammer.
Dokumentet som beskriver rammesettet vil få navnet index.html. Innholdet er vist i eksempel 8.2.
Eksempel 8.2. Rammesett Beskrivelse FilNy nettside med rammer marginheight = 0 rammekant = 0>
I eksemplet ovenfor er navnet kun tildelt én ramme (den nederste til høyre). Det er i denne rammen innholdet i dokumentene vil vises.
Links.html-filen inneholder et dokument med hyperkoblinger til eksempelfilene (den inneholder også en lenke til startsiden). Det antas at eksempelfilene ligger i mappen Eksempler. Nedenfor er innholdet i links.html-filen (merk verdien av målattributtet til hyperkoblinger) (eksempel 8.3).
Eksempel 8.3. Fil med hyperkoblinger
title.html-filen inneholder tittelen på nettstedet (sammen med en hypotetisk logo), som vises i den tilsvarende rammen (eksempel 8.4).
Eksempel 8.4. Fil for rammen med sideoverskriftenSide tittel
7. Tabeller
Som du kan se av teksten i HTML-dokumentet (se eksempel 8.4), for å oppnå en akseptabel plassering for logobildet, måtte vi ty til å bruke en tabell.
På eksempelsiden under vurdering, er en annen fil brukt - start.html. Denne filen inneholder startsiden til nettstedet. Innholdet i denne filen kan være hva som helst. Når du skrev eksemplet, ble en del av teksten til Chapter plassert i start.html-filen. 7. For å spare plass i boken er ikke innholdet i denne filen gitt.
Etter at alle sidefilene er opprettet, kan du beundre resultatet (fig. 8.2).
Ris. 8.2. Nettsted laget med rammer
Standard målramme
Til slutt, la oss se på hvordan du kan redusere mengden tekst i et HTML-dokument når du bruker den samme rammen som en målramme for mange hyperkoblinger. Ta en ny titt på teksten i eksempel 8.3. Hver hyperkobling i dette eksemplet har samme målattributtverdi. For å unngå å måtte spesifisere det mange ganger, kan du tilordne en standard målramme.
Standard HTML-målrammen er satt til BASE-elementet (en enkelt tag
). Dette elementets målattributt er satt til navnet på standardrammen. Hvis BASE-elementet brukes, må det plasseres i HEAD av HTML-dokumentet. Med det sagt kan eksempel 8.3 omskrives som følger (eksempel 8.5).
Eksempel 8.5. Bruke standard målramme
8.4. NORAMES-element
Rammer er et veldig attraktivt middel for å designe nettsider, som burde vært tydelig fra eksemplene gitt tidligere. Rammer i HTML dukket imidlertid ikke opp umiddelbart, og i lang tid var de ikke standardiserte, så behandlingen og presentasjonen av dokumenter med rammer av forskjellige nettlesere kan fortsatt variere betydelig. I tillegg kan et ganske stort antall brukere fortsatt ha eldre versjoner av nettlesere som ikke støtter rammer i det hele tatt.
Hvis det er viktig at brukeren ser minst noe når han ser på et nettsted som bruker rammer, bør du bruke NOFRAMES HTML-elementet. Dette elementet er spesifisert av sammenkoblede tagger
Og . Den er plassert i én fil med en beskrivelse av rammesettet.HTML-tekst plasseres mellom kodene til NOFRAMES-elementet, som nettleseren viser hvis den ikke støtter rammer (eller hvis brukeren har deaktivert rammestøtte i nettleseren). Hvis nettleseren er i stand til å vise rammer, ignoreres teksten mellom NOFRAMES-elementtaggene. Tekst mellom tagger
Og.Og kan formateres nøyaktig det samme som om det var mellom taggerDet er klart at mye mer bærbare nettsteder kan opprettes ved å bruke NOFRAMES-elementet, spesielt hvis man sørger for at ingen viktig informasjon går tapt når rammer ikke kan vises. For nettstedet diskutert tidligere kan du lage en versjon som ikke bruker rammer (laget for eksempel ved å bruke bare tabeller), og inne i NOFRAMES-elementet kan du plassere en informasjonsmelding og en lenke til denne versjonen av nettstedet (eksempel 8.6 ).
Eksempel 8.6. Bruk av NORAMES-elementetNy nettside med rammer marginheight = 0 rammekant = 0>
Merk følgende! Nettleseren din støtter ikke rammer. For å åpne en versjon av nettstedet som ikke bruker rammer, klikk
her.
8.5. Flytende rammer
I tillegg til de vanlige rammene som er omtalt tidligere, tillater HTML bruk av såkalte flytende rammer. Flytende rammer ser nøyaktig det samme ut som innebygde HTML-dokumenter: de vises av nettleseren i et vindu som ligger direkte i teksten (Figur 8.3).
Ris. 8.3. Utseendet til en flytende ramme
For å lage flytende rammer, bruk HTML IFRAME-elementet (sett med parede tagger ). Den flytende rammen er konfigurert ved hjelp av følgende attributter:
Src – URI for HTML-dokumentet som vises i rammevinduet;
Rammekant – visningsmodus for rammekant, kan ha verdier 0 (viser ikke kantlinje) eller 1 (vis kantlinje);
Rulling – visningsmodus for rullefelt for rammeinnhold, kan ta verdiene nei (ikke vis rullefelt), ja (vis rullefelt) eller auto (brukt som standard, vis rullefelt bare hvis innholdet ikke passer);
Margbredde – angir den horisontale avstanden mellom rammekantene og innholdet (i piksler);
Marginhøyde – angir den vertikale avstanden mellom kantene og innholdet i rammen;
Juster – setter posisjonen til den flytende rammen i teksten, kan ta verdiene til venstre, høyre og senter;
Bredde – angir bredden på det flytende rammevinduet verdien kan være enten absolutt (i piksler) eller prosent;
Høyde – angir høyden på det flytende rammevinduet.
Tekst mellom tagger vises av nettleseren bare hvis det er umulig å vise selve den flytende rammen.
Som et eksempel på bruk av IFRAME-elementet, nedenfor er teksten til et HTML-dokument, hvis utseende er vist i fig. 8.3 (eksempel 8.7).
Eksempel 8.7. Flytende rammedokumentEksempelside med flytende ramme En flytende ramme ser slik ut:
Nettleseren din støtter ikke iframes. For å se innholdet i start.html-dokumentet, klikk
8.6. Erstatter rammer med innebygde HTML-dokumenter
Hvis du av en eller annen grunn ikke har mulighet til å bruke rammer, men likevel ønsker å beholde sidegrensesnittet i samme form som det ville vært hvis du brukte rammer, kan du ty til å bruke HTML OBJECT-elementet. Ta en titt på teksten i eksempel 8.8. Her, for å lage en analog av den flytende rammen vist i fig. 8.3 brukes OBJECT-elementet.
Eksempel 8.8. Bytte ut en flytende ramme med et elementBytte ut en flytende ramme med et innebygd HTML-dokument Det innebygde HTML-dokumentet ser slik ut:
Nettleseren din støtter ikke objektinjeksjon. For å se innholdet i start.html-dokumentet, klikk
Resultatet av å introdusere et annet HTML-dokument i et HTML-dokument er vist i fig. 8.4. Som du kan se, er det praktisk talt ikke forskjellig å introdusere et objekt i utseende fra å legge til en flytende ramme.
Ris. 8.4. Innebygd dokument som en flytende ramme
Riktignok er det en hake i erstatningen som vurderes her. Med HTML alene vil du ikke kunne bruke det innebygde dokumentområdet som målramme for hyperkoblinger, så omfanget av løsningen beskrevet her er mye smalere enn omfanget av mulig bruk av rammer.
Relatert materiale:
- Bilforsterker - økonomiske alternativer for å lage lyd i kabinen Slik monterer du en lydforsterkerkrets
- Høykvalitetsforsterker uten tilbakemelding: End Millennium totrinns transistorforsterker
- Strømmer World Of Tanks Aces gg l første tank
- De beste mellomstore tankene i World of Tanks
- Last ned elektronikk trinn for trinn fb2
- Lage en sal i Minecraft 1
- Binder for raskt å kjøpe våpen i cs:go
Abonner på det ukentlige sbsko.ru-nyhetsbrevet