webForumDet fria alternativet

Länka till div-box

HTML & CSS

18 svar · 999 visningar · startad av Mira

Medlem sedan maj 2001966 inlägg
Frågan#1

Ursäkta om jag inte använder rätt ord för begreppen.
Är helt ny på div.

Hur gör man för att länka till en box - så att innehållet i länken visas i boxen?
När man har iframe namnger man ju den och skriver target="namn" i länken.

Medlem sedan juni 2002324 inlägg
#2

Vad jag vet går inte detta att göra med html. Men det går att göra med JavaScript:

document.getElementById("divNamn").innerHTML="Text";

Detta ändrar innehållet i diven till "Text".

Funktion för att göra detta kan se ut såhär:

funtion openContentInDiv() {
document.getElementById("divNamn").innerHTML="Text";
}

Länkurl

<a href="#" onClick="openContentInDiv()">Klicka</a>

Det borde även gå att ladda in en hel fil i en div med liknande metoder... :bire

Medlem sedan maj 2001966 inlägg
#3

Någon sa till mej att jag skulle köra div istället för iframe... allvarligt så tycker jag det verkar va en onödigt jobbig grej.

Vad är det för fel på iframe?

Medlem sedan sep. 20026 425 inlägg
#4

Varför använda en iframe när du kan göra samma sak med lager (div:ar) mycket smidigare? Varför använder du iframes?

Medlem sedan maj 2001966 inlägg
#5

Jag tycker inte länkningen verkar speciellt smidig...
Fattar inte.
VAD är det som är smidigare?

Medlem sedan sep. 20026 425 inlägg
#6

Jag förstår inte heller. Varför du använder iframes har du fortfarande inte svarat på. ;)

Du kan länka till sidor med div-ar i hur lätt som helst.

Iframes är dumt, ett exempel: hur vet användaren adressen till en sida som ligger i en iframe? Adressen står ju inte i adressfältet i alla fall.

Medlem sedan juli 20013 378 inlägg
#7

Mira skrev:

Vad är det för fel på iframe?

Inget alls egentligen enligt minmening - så länge du väljer att köra HTML4 Transitional eller XHTML1.0 Transitional.

iframes kan vara bra att ha om man vill kunna peta in olika innehåll i ett block med fasta mått på en sida och av någon anledning vill slippa Javascript eller serversidekodning.

m_soderlund - Om man väljer att lägga in innehåll dynamiskt i en div via Javascript vet ju inte besökaren vart det kommer ifrån heller... Så i den jämförelsen är väl iframe "bättre" på så sätt att man i normalfallet kan se vad man "petar in" för innehåll i iframe-fältet genom att innehållets URL normalt visas i statusfältet... Något man inte kan med automatik om man triggar scripts för att ladda in saker i en div... eller ? ;)

Det finns för- och nackdelar med allt :)

Men - som sagt - Vill du använda div istället för iframe är det Scripts i någon form som gäller ;)

//Edit: och vill man "peta in" webbsidor i div-taggar är "Ajax" en teknik man kan ta till - en teknik som dessutom är väldigt "inne" just nu ;)

Medlem sedan juni 2002324 inlägg
#8

EDIT: Svar till m_soderlund

Men att ändra innehållet i en div är inte speciellt smidigt. Tänk dig att du har 20 rutor på en sida där du vill kunna öpna 20 olika sidor i varje ruta. Med ren html(utan iframes, med divar...) får du skapa 400 sidor för att täcka alla möjligheter... Jag tycker oftast inte det finns någon anledning att använda (i)frames... Men en div ersätter inte på något sätt en iframe...

Medlem sedan maj 2001966 inlägg
#9

Varför jag använder iframe?
För att jag inte vill använda frames eller ssi.
För att jag än så länge inte kan något annat som är lika smidigt.

Ex. på den här test-sidan: TEST

Den gråbruna rutan är en IFRAME, där innehållet från länkarna syns.
För att innehållet i länkarna ska hamna i den rutan behöver jag bara skriva target='iframe'.
Av den info jag fått hittills verkar det va mycket krångligare med div.

Skrev om problem med höjden (i en annan tråd), men det visade sej att div inte löste det problemet.
För att motivera ett byte och inlärning av nya koder så vill man ju gärna veta på vilket sätt det är bättre.

Medlem sedan mars 20041 505 inlägg
#10

Använd ASP eller PHP för att inkludera undersidorna direkt i din HTML-kod. Istället för att dela in hemsidan i olika små delar med frames, så visas sidan som ett enda dokument, vilket har många fördelar vad gäller tillgänglighet.

Fördelar med "divs":

- Webbläsaren behöver inte ha stöd för frames.
- Det blir lättare för besökare att göra bokmärken.
- Det blir lättare för besökare att göra utskrifter.
- Om man hittar din hemsida med hjälp av en sökmotor och hamnar på en undersida, så visas ändå menyn och logon längst upp utan att förvirring kan uppstå.

Du har säkert sätt olika hemsidor där det står exempelvis: index.php?page=start. För att använda PHP så är detta all kod som behövs:

<?php   
if(!empty($_GET['page']) && file_exists($_GET['page'].".php"))  
	include($_GET['page'].".php");  
else  
	include("start.php");  
?>

Allt detta, att behöva blanda in serverspråk och grejjer, kan naturligtvis verka onödigt jobbigt i början. Men om man lär sig det nya sättet att arbeta så kommer man märka alla fördelar och tillslut klarar man sig helt utan frames!

Medlem sedan maj 2001966 inlägg
#11

Så länge det bara är min privata hemsida så känns det lite överarbetat.
Jag vill inte att folk ska kunna skriva ut något från den, bokmärke till startsidan räcker (det går ju lätt att se länkarnas enskilda adresser om man vill).
Det enda jag klurar på är hur många webläsare det egentligen är som inte kan se frames?

Det du skrev i php är som hieroglyfer för mej...

"Klara sej utan frames" - det låter som nåt sattyg man ska bli av med så fort som möjligt...

Medlem sedan apr. 200312 679 inlägg
#12

Mira, du kanske kan hitta ett intressant svar i min tråd om iframes och divar?

Medlem sedan maj 2001966 inlägg
#13

Vet inte om du menar som svar på min fråga om länkning eller på den om höjden (eller båda)...?

Förstår inte riktigt sambandet mellan iframen och diven där, men resultatet är väl samma som det jag har på min testsida?
Ser ut som att iframen är rutan (där innehåll visas), men diven styr formatet på den.
Och javascript styr länkningen - vilket jag fortf. inte fattar vad det ska va bra för...

Om diven styr storleken så blir det väl ändå så att de med mindre webläsarfönster inte kan se nederdelen på min testsida (det som var mitt ursprungliga problem).

Medlem sedan dec. 20042 245 inlägg
#14

Om du tar bort

 style="overflow:hidden;"

från BODY-taggen så ska man nog kunna scrolla till innehållet om man har litet fönster. :)

Att använda IFRAME är kanske smidigare för dig som gör sidan, men det kanske inte är smidigare för användaren som besöker din sida. Å andra sidan tycker jag att en lösning med DIV+javascript är ännu värre eftersom jag inte har JS aktiverat. ;)

Jag tycker att en lösning med serverskript är bäst ur tillgänglighetssynpunkt, men som jarvklo sa, allt har för- och nackdelar. :)

Medlem sedan maj 2001966 inlägg
#15

zcorpan skrev:

Om du tar bort

 style="overflow:hidden;"

från BODY-taggen så ska man nog kunna scrolla till innehållet om man har litet fönster. :)

Jo, jag vet... tycker bara den där randen på sidan är så ful.
Nu är det så lustigt att min webläsare vägrar dölja den även om jag har koden kvar. Den dök upp igår från ingenstans...

Medlem sedan dec. 20042 245 inlägg
#16

Testa overflow:auto istället. :)

Medlem sedan maj 2001966 inlägg
#17

Ingen skillnad.
Det verkar gå troll i det där... :q
För det funkar på andra ställen.

Nä, nu hitta jag felet.
Den här koden.
Är det nåt fel på den (kopierat den från en css-skola)?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">

Medlem sedan dec. 20042 245 inlägg
#18

Hmm... Testa det här istället:

html { overflow:auto; }

...och låt DOCTYPEn vara kvar. :)

Men om du föredrar quirks mode kan du ju alltid köra utan DOCTYPE eller använda

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

istället. :)

Medlem sedan maj 2001966 inlägg
#19

Kan inget om DOCTYPE... bara kopierade en kod som rekommenderades.
Vad är skillnaden?

Edit:
Sökte på forumet och hittade ganska bra svar på det.
Som jag förstår det kan man lika gärna va utan om man inte använder den strikta modellen... (har aldrig haft det förut)

Inte konstigt då att validatorn hittade en massa felaktig kod, eftersom allt inte låg i en css-fil...

260 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)