Avatar billede nicocarlos Nybegynder
19. april 2007 - 01:22 Der er 21 kommentarer og
1 løsning

Design med div

Jeg er ret ny til css design og har lavet bokse med <div> istedet for f.eks. html tables. Men hvordan kan man gøre sådan så de kun udvider sig i højden, ikke i breden?

Og hvordan kan man få teksten til at blive inde i den div, hvis jeg har en lang linje ryger den ud over i bredden?

På forhånd tak
Avatar billede windcape Praktikant
19. april 2007 - 01:33 #1
"Men hvordan kan man gøre sådan så de kun udvider sig i højden, ikke i breden"
-- du kunne jo sætte en brede på....

"Og hvordan kan man få teksten til at blive inde i den div, hvis jeg har en lang linje ryger den ud over i bredden?"
-- kan du ikke i html.
Avatar billede roenving Novice
19. april 2007 - 01:37 #2
Nu er religiøse måder at behandle verden, måske ikke den smarteste ting, et eksempel er trenden med at afsværge brugen af tabeller, som kan nogle helt unikke ting, som vi i hvert fald den kommende stribe år ikke kan lave fornuftigt uden !-)

En div, der har en defineret bredde, vil normalt udvide sig vertikalt, hvis den får fyldt en masse indhold i, har den også en defineret højde, burde den holde denne højde, og afhæængig af indstillinger for overflow enten ignorere det ekstra indhold eller sætte scrollbars på ...

I css2 findes der så en min-height-property, som skulle gøre det, du efterspørger, men da den mest udbredte browser ikke understøtter den tingest (og i øvrigt fortolker height på samme -- fejlagtige -- måde !-), så er det ikke helt fremgangsrigt bare at bruge den ...

Lange linjer uden mellemrum eller anden whitespace skal man bare banne, det må være resultatet af saboage !o]
Avatar billede nicocarlos Nybegynder
19. april 2007 - 01:37 #3
"-- du kunne jo sætte en brede på...."
Jeg går udfra at nå jeg sætter en bredde ved hjælp af css, til den pågældende <div>
sådan her = width:200px; , så har jeg også sat en bredde på.

"kan du ikke i html"
Så det betyder jo faktisk at man ikke kan lave det grundlæggende design i css? - med mindre man vil sidde og lave <br> osv, så alle sider passer i <div> - det kan da ikke være rigtigt O_O
Avatar billede nicocarlos Nybegynder
19. april 2007 - 01:39 #4
roenving --> Så jeg burde bare holde mig til tabeller? - Jeg tænkte bare nu når jeg begyndte på en ny side, så ville ja da prøve nogle af de muligheder der er med CSS og så læste jeg lidt om CSS design.
Avatar billede nicocarlos Nybegynder
19. april 2007 - 01:44 #5
Følgende udvider sig horisontalt, selvom jeg ikke har en højde på :/

position: absolute;
right:10px;
top:50px;
width:200px;
background:#fff;
border:1px solid #000;
Avatar billede roenving Novice
19. april 2007 - 01:46 #6
css har ikke det fjerneste med at undlade at bruge tabeller ...

-- jeg forsøger faktisk oftest at undgå at bruge tabeller, men det har mere noget med noget semantisk logisk, hvor tabellen ikke er det rigtige type element ...

-- men at skifte fra at bruge tabeller til at bruge css, svarer til at du skrotter din bil, og i stedet tager dåsen med autolak ned efter morgenbrød søndag morgen ...

-- Cascading StyleSheets virker ganske udmærket på tabeller, og f.eks. lodret centrerng indenfor en defineret højde laves simplest og smartest vha. tabelceller ...
Avatar billede roenving Novice
19. april 2007 - 01:50 #7
Absolut positionering er noget fanden har skabt ...

-- eller rettere er det blevet overtaget som et orakel, og det er der, jeg har en mistanke om, at han har en finger med i spillet ...

-- og en div udvider sig zq ikke sidelæns, når jeg prøver at bruge den, men har man et ord på 677 bogstaver, og ikke har defineret overflow vil den jo tilpasse sig indholdet ...

-- og så må jeg gentage: Ingen ord indeholder 677 bogstaver, så hvis de forekommer, er det sabotage, og sådan noget skal bannes !o]
Avatar billede nicocarlos Nybegynder
19. april 2007 - 01:55 #8
Jeg dropper css, det er noget pis til andet end at styre skrifttyper og størrelser åbenbart, utroligt at den kan lave scroll ved overflow, men ikke kan fatte at udvide sig i højden, smid du bare et svar.

Jeg troede bare man kunne bruge det mere til "design" af en side i form af opbygning, men det virker som om det er noget pis til det, men har da åbenbart misforstået noget så.

Tak og smid et svar ;D
Avatar billede stenger Nybegynder
19. april 2007 - 02:01 #9
Det kan sagtens bruges til design af side, det skal bare læres ligesom alt andet.

#container {
  position:absolute;
  margin-top:20px;
  margin-left:auto;
  margin-right:auto;
  width:800px;
  border:1px solid #000000;
  }

Så har man simpelt en boks centreret på skærmen. Det er da rimeligt simpelt...

I øvrigt kan du bare lave en class til din tekst, hvor du så sætter padding-right:60px; eller noget... så stopper teksten 60 pxs fra det omkringliggende lags højrekant.

Smart, nøh? :)
Avatar billede roenving Novice
19. april 2007 - 02:01 #10
Nej, så misforstår du mig ...

Et design opbygget af block-level elementer og stylet med css er der ikke noget galt med, man skal bare ikke forfalde til at bruge f.eks. Visual Studios grid-opbygning, som alene forlader sig på absolut positionering, hvilket absolut ikke er fornufigt, medmindre man ved, at _alle_ brugere har nøjagtig den samme skærmopløsning, som man selv har (hvilket ikke giver mening på indernettet !-)

-- nu ved jeg jo ikke i hvilken henretning, du har prøvet at opbygge noget, men du kan f.eks. prøve at kigge på eksemplerne i http://www.eksperten.dk/spm/488278, http://www.eksperten.dk/spm/497362 eller http://www.eksperten.dk/spm/520876 !-)
Avatar billede nicocarlos Nybegynder
19. april 2007 - 02:17 #11
hmm okay stenger. Jeg har ikke nogle problemer med at lave en boks har fået lavet en del, men jeg har problemer med at få teksten til at blive indeni.

Har prøvet med:

p {
padding-right:60px;
}

men det hjælper ikke :D

--> roenving har nok misforstået dig ja :D - kigger på det imorgen.
Avatar billede stenger Nybegynder
19. april 2007 - 12:18 #12
Har du et link?

Eller kan du evt. poste din HTML-kode?
Avatar billede nicocarlos Nybegynder
20. april 2007 - 20:37 #13
Jeg har kigget lidt mere på det og har valgt at bygge designet op med alm. tables, da jeg har arbejdet mere med det, bruger css til selve designet på tables osv. som normalt.

Tak for jeres hjælp, fik mig til at indse at det ikke er helt optimalt (ihf. ikke for mig) at sætte det op ved hjælp af css.
Avatar billede stenger Nybegynder
20. april 2007 - 20:47 #14
I længden er det nok en god idé at sætte sig ind i CSS, men kører du på en deadline lige nu, så er det da naturligt at holde sig til det man kender :)
Avatar billede windcape Praktikant
23. april 2007 - 05:34 #15
stenger
Det var da noget fis at lukke ud. Hvis man ikke kender til CSS, kender man ikke til noget grundlæggende, og bør derfor ikke arbejde på deadline.

Om man burde sige sit job op istedet var måske en anden sag.

Desuden så har CSS _STADIGVÆK_ ikke noget med tables at gøre. Du bruger normalt BEGGE DELE.
Avatar billede stenger Nybegynder
23. april 2007 - 07:52 #16
Er såmænd ganske enig... tror heller ikke der er mange firmaer, som søger eller ansætter webfolk, som ikke regner med at kandidaten kan CSS til fingerspidserne.

Men derfor kan han jo sagtens have en "personlig" deadline (skoleprojekt eller andet), som gør at man holder sig til det man kender. Personligt ville jeg sætte mig ind i CSS, men det kan jeg jo ikke bestemme...

Men er enig i at man nok får svært ved at få et webdesign-job, hvis man udelukkende kender til tables :)
Avatar billede nicocarlos Nybegynder
26. april 2007 - 00:22 #17
Windcape, kender godt til CSS generelt med hensyn til at lave designs på tables osv. Men ville udforske at lave design/side opsætning eller hvad du ville kalde det kun med CSS.

Det kan godt lade sig gøre forresten har fået leget lidt med det ;D Men det noget pis. Så holder mig til at bruge det sammen.

"Hvis man ikke kender til CSS, kender man ikke til noget grundlæggende, og bør derfor ikke arbejde på deadline."
- Hvad er det for noget fis at lukke ud ? ;D - at du ikke ved noget om at style din html, betyder da ikke man ikke kender til noget grundlæggende.
Avatar billede nicocarlos Nybegynder
26. april 2007 - 00:23 #18
Og forresten smid et svar ;D
Avatar billede windcape Praktikant
26. april 2007 - 00:26 #19
nicocarlos CSS *er* grundlæggende. Og som det vist er blevet sagt før, så har html utrolig få muligheder for at vise noget som helst visuelt uden CSS.

Og points tilfalder vist roenving.
Avatar billede nicocarlos Nybegynder
26. april 2007 - 00:34 #20
okay. venter på roenving så ;D

html --> css
grundlæggende --> ...
Avatar billede roenving Novice
27. april 2007 - 11:59 #21
Nutidigt webdesign laves ved at lave (d)html, altså dynamisk (x)html, og det involverer tre _meget_ forskellige del-elementer: html, css og javascript ...

Html bruges til at registrere, gruppere og vise dit indhold, og også (afhængig af bl.a. css-benyttelsen !-) til at have layoutet ...

Css bruges så til at style de forskellige delelementer, og det kan man faktisk i et sådant omfang, at man kan blive nærmest uafhængig af den grundlæggende opbygning, der er i html-koden (selvom det ikke lige er det, jeg vil anbefale !-)

Så kan man benytte javascript til at udvide de dynamiske aspekter, som css bringer med ind, men også i meget voldsomt omfang til helt at omskabe dele af indholdet (eller sågar det hele !-)

-- og der blev faktisk lavet nogle ganske flotte hjemmesider midt i 90'erne, men det blev så opnået med de tabel-helveder, som har givet baggrund for animosteten mod at bruge tabeller ...

-- at undlade at bruge tabeller er der ikke nogen grund til, men al nesting i mange niveauer er noget rod, hvis det ikke er direkte semantisk begrundet, og det er så uafhængigt af, om man bruger tabeller eller f.eks. divs ...

-- els velbekomme '-)
Avatar billede roenving Novice
25. maj 2007 - 17:22 #22
-- og tak for point ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester