webForumDet fria alternativet

svårt att göra en snygg layout med frames?

19 svar · 727 visningar · startad av maqe

maqeMedlem sedan dec. 2003824 inlägg
#1

Jag skall göra en site med den http://www.mjardevi.se layouten ungefär, alltså att sidan skall ligga i mitten av sidan och under den stora bilden på första sidan till vänster hade jag tänkt att lägga meny i form av en treeview som måste ligga i en egen fram för annars tappar den viewstate läget när man klickar på den. Nån som har några tips på om det går att göra något sånt med frames?

adeMedlem sedan juli 20041 081 inlägg
#2

Jag minns att jag försökte det för 2 år sedan. Det var mycket svårt. Ett tips är att köra med tabeller och celler. Det blir lättare designmässigt, kodmässigt och med anpassning till upplösning.

ImpactMedlem sedan sep. 20041 551 inlägg
#3

Frames bör i allra högsta grad ej användas. Läs gärna följande artikel.
http://www.456bereastreet.com/archive/200411/who_framed_the_web_frames_and_usability/

maqeMedlem sedan dec. 2003824 inlägg
#4

Näe jag vet att frames bör undvikas dock så verkar min treeview kontrol inte tycka om att ligga direkt i en cell för den tappar som sagt sin viewstate då och collapsar hela tiden eftersom när jag klickar på en länk så laddas sidan om utan att det är en postback och då laddar den all data från början. Nån kanske har nått tips på hur man åtgärder det istället? Jag har fått tips om att använda onselectednodechanged i min treeview för asp.net men jag ser inte lösningen direkt

jarvkloMedlem sedan juli 20013 378 inlägg
#5

Hmm...

  • Frames är inte svårt när man lärt sig hantera dem ;) .
  • Frames har för- och nackdelar jämfört med det ade föreslår (bl.a. hamnar rullningslisten inte i högerkanten utan i den frame som du lägger ditt innehåll i den typen av layouter du frågar efter)
  • Frames bör kanske iofs undvikas av flera skäl, men det är fullt tillåtet att använda dem (än så länge) om man bara ser till vad man får och inte får göra enligt kodstandard
  • Det du vill göra är enkelt med frames också...

Exempel:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
   Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="sv" xml:lang="sv">
<head>
  <title>Ett exempel</title>
	<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
</head>
<frameset cols="*,600,*">
<frame name="vanster" src="egenfil.html" frameborder="1" />
<frameset rows="200,*,100">
  <frame name="ovre" src="egenfil.html" frameborder="1" />
  <frameset cols="200,*">
    <frame name="treeview" src="egenfil.html" frameborder="1"  />
    <frame name="innehallet" src="egenfil.html" frameborder="1"  />
  </frameset>
  <frame name="sidfoten" src="egenfil.html" frameborder="1" />
</frameset>
<frame name="hoger" src="egenfil.html"  frameborder="1"  />
<noframes><body><div>Detta är ett exempel</div></body></noframes>
</frameset>
</html>

Och för den som tvekar på om det där är giltig kod eller ej, är det bara till att validera... (tips: det är det - Frames är tillåtna både i HTML4 och xhtml 1.0 om man väljer "rätt" <!DOCTYPE ;) )

Vill du ha bort ramarna runt frame-fälten, byter du bara värdet på de frameborder-attribut som hör till dessa till "0" ;)

Och behöver du mer hjälp med frames, är det bara att fråga igen :birp

maqeMedlem sedan dec. 2003824 inlägg
#6

Många frames blir det :) ... Ingen som har jobbat med en treeview likt den här men jag antar att man måste använda frames när det handlar om sånna kontroller?

jarvklo skrev:

Hmm...

  • Frames är inte svårt när man lärt sig hantera dem ;) .
  • Frames har för- och nackdelar jämfört med det ade föreslår (bl.a. hamnar rullningslisten inte i högerkanten utan i den frame som du lägger ditt innehåll i den typen av layouter du frågar efter)
  • Frames bör kanske iofs undvikas av flera skäl, men det är fullt tillåtet att använda dem (än så länge) om man bara ser till vad man får och inte får göra enligt kodstandard
  • Det du vill göra är enkelt med frames också...

Exempel:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
   Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="sv" xml:lang="sv">
<head>
  <title>Ett exempel</title>
	<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
</head>
<frameset cols="*,600,*">
<frame name="vanster" src="egenfil.html" frameborder="1" />
<frameset rows="200,*,100">
  <frame name="ovre" src="egenfil.html" frameborder="1" />
  <frameset cols="200,*">
    <frame name="treeview" src="egenfil.html" frameborder="1"  />
    <frame name="innehallet" src="egenfil.html" frameborder="1"  />
  </frameset>
  <frame name="sidfoten" src="egenfil.html" frameborder="1" />
</frameset>
<frame name="hoger" src="egenfil.html"  frameborder="1"  />
<noframes><body><div>Detta är ett exempel</div></body></noframes>
</frameset>
</html>

Och för den som tvekar på om det där är giltig kod eller ej, är det bara till att validera... (tips: det är det - Frames är tillåtna både i HTML4 och xhtml 1.0 om man väljer "rätt" <!DOCTYPE ;) )

Vill du ha bort ramarna runt frame-fälten, byter du bara värdet på de frameborder-attribut som hör till dessa till "0" ;)

Och behöver du mer hjälp med frames, är det bara att fråga igen :birp

här

zcorpanMedlem sedan dec. 20042 245 inlägg
#7

Inte alls. http://inspire.server101.com/js/xc/

maqeMedlem sedan dec. 2003824 inlägg
#8

zcorpan skrev:

Inte alls. http://inspire.server101.com/js/xc/

Nu är det en speciell kontroll för asp.net jag använder mig av och har inte för avsikt att gå över till något annat

maqeMedlem sedan dec. 2003824 inlägg
#9

Finns det någon möjlighet att göra så att en div breder ut sig över gränsen mellan 2 frames?

Web-TorMedlem sedan nov. 200013 890 inlägg
#10

maqe skrev:

Finns det någon möjlighet att göra så att en div breder ut sig över gränsen mellan 2 frames?

Nej, däremot kan du trigga en div som ligger i en annan frame. Så har man t.ex. gjort på https://www.skandiabanken.se

maqeMedlem sedan dec. 2003824 inlägg
#11

Okay det fungerar inte för mig dock ... skulle vilja att den kunde gå över kanten istället eftersom jag har en div som "tänds" när jag högerklickar i en trädstruktur

Web-TorMedlem sedan nov. 200013 890 inlägg
#12

Det går som sagt var inte. Det närmaste du kan komma är createPopup(). Men det är en IE-function så det är inte att rekommendera på en "publik" webbsida.

maqeMedlem sedan dec. 2003824 inlägg
#13

Mitt dilemma är att jag använder en asp.net kontroll som enbart fungerar i IE men det gör mig absolut ingenting då jag inte bryr mig om dom som har alternativa läsare. Jag har heller inte källkoden så jag kan ändra i denna webusercontrol så det får bli såhär då ...

mrsgreenMedlem sedan nov. 200418 inlägg
#14

Varför inte använda stylesheets istället för frames??
Stylesheets fungerar ju bättre och bättre, fast det hänger ju kanske på vilken din målgrupp är och om de har den senaste webbrowsern.
En tanke bara....

frankofMedlem sedan jan. 20016 874 inlägg
#15

mrsgreen skrev:

Varför inte använda stylesheets istället för frames??
Stylesheets fungerar ju bättre och bättre, fast det hänger ju kanske på vilken din målgrupp är och om de har den senaste webbrowsern.
En tanke bara....

Hur förhindrar css att sidan laddas om och tappar "minnet" i detta specifika fallet?

maqeMedlem sedan dec. 2003824 inlägg
#16

Hm ... stylesheet? Jag måste ladda innehållet från min treeview i en annan browser eller eller del av sidan t.ex. en frame pga. att jag använder denna webbusercontrol

zcorpanMedlem sedan dec. 20042 245 inlägg
#17

Jag kan knappast rekommendera den "webbusercontrol" då den endast fungerar med IE med JavaScript och ActiveX aktiverat.

Därmed har du säkert tappat minst 20% av användarna samt helt stängt ute sökmotorer.

adeMedlem sedan juli 20041 081 inlägg
#18

maqe; som jag sa, att det är så viktigt med upplösningar när du kodar frames annars får du som jarvklo sa, rullningslist i framen. Kör med divvar eller tabeller. Jag föredrar tabeller.

Sedan så kan du ju köra med divvar och tabeller via ett styleshet om du vill.

Lycka till.

adeMedlem sedan juli 20041 081 inlägg
#19

Så har jag en fråga i tråden :e

Jag vet att teckensnitt, färg, borders med mera ska gärna placeras i en css. Men är det nödvändigt att köra tabeller genom css?

icaaqMedlem sedan okt. 20005 273 inlägg
#20

Vill man ändra utseendet på sin tabell ska man göra det med css.

Men jag förstår nog inte din fråga riktigt :OO

mv icaaq

144 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
141 ms — hämta tråd, inlägg och bilagor (db)