Avatar billede stevenizzle Nybegynder
19. oktober 2005 - 20:44 Der er 20 kommentarer

To layers ved siden af hinanden.

Hvordan får jeg 2 <div>'s til at stå ved siden af hinanden uden brug af float..

<div style="width: 100px;">..</div>
<div id="test" style="border: 1px solid #FF0080;">..</div>

Den skal se sådan ud, men det layer med id'et 'test' skal fylde AL den plads der er tilbage.
Avatar billede jokkejensen Novice
19. oktober 2005 - 20:52 #1
display:inline på dem begge
Avatar billede stevenizzle Nybegynder
19. oktober 2005 - 20:54 #2
Så fylder den jo ikke resten af det tomme plads.
Avatar billede roenving Novice
19. oktober 2005 - 21:04 #3
Det kan man kun med frames, hvis ikke man vil basere sit layout på javascript (og det er verdens dårligste idé !-)

-- men hvorfor laver du det ikke bare med en fast bredde ?-)
Avatar billede stevenizzle Nybegynder
19. oktober 2005 - 21:17 #4
roenving - hvordan ville du så gøre det med en fast bredde?
Avatar billede stevenizzle Nybegynder
19. oktober 2005 - 21:17 #5
float?
Avatar billede stevenizzle Nybegynder
19. oktober 2005 - 21:19 #6
Jeg lavede det rigtigt på et tidspunkt, men kom til at slette det - og har glemt hvordan :D

Men jeg fik dem på en måde ved siden af hinanden, og gjorde den boks der skulle fylde al den tomme plads til 100% i bredde.
Avatar billede roenving Novice
19. oktober 2005 - 21:23 #7
Ja, for eksempel !-)

-- hvis det skulle være til mig selv, ville jeg nok bare tage en tabel og sætte to divs i, for så skal man ikke bøvle med de forskellige browseres måde at fortolke egenskaber på floats ...

F.eks.

<style type="text/css">
#minTabel{width:800px;margin:0 auto;border-collapse:collapse;}
#minTabel td{margin:0;padding:0;border:0;}
</style>

<table id="minTabel">
  <tr>
    <td>
      <div style="width:100px;">
        Noget
      </div></td>
    <td>
      <div style="width:700px;">
        Noget mere
      </div></td>
  </tr>
</table>
Avatar billede stevenizzle Nybegynder
19. oktober 2005 - 21:27 #8
ok. jeg vil ikke bruge <table> til mit design, desværre. :/
Avatar billede roenving Novice
19. oktober 2005 - 21:29 #9
Hvorfor ikke ?-)
Avatar billede stevenizzle Nybegynder
19. oktober 2005 - 21:31 #10
ved ikke :).. synes bare ikke <table>'s hører til i et design, men kun i tabeller - hvilket jo siger sig selv :D ved ikke om det er mest korrekt.

har du ikke en idé til at lave det med <div>?
Avatar billede olebole Juniormester
19. oktober 2005 - 22:23 #11
<ole>

Der er ét HTML-element, der beregnet til oprettelse af søjler: Tabellen.
Der er en del tutorial-forfattere, der har fået et eller andet fuldstændig galt i halsen - og fraråder på det kraftigste at bruge tabeller til _noget_ somhelst.

Læg mærke til, den slags påstande _aldrig_ bliver bakket op af begavet argumentaion - eller rproducerbare eksempler på tabellens 'forfærdeligheder'. Formodentlig fordi langt de fleste tutorial-forfattere ikke har skygge af viden om det, de skriver om.

Således flyder WWW med tutorials om XHTML, på trods af, jeg endnu har til gode at se en forfatter af en XHTML-tutorial, der selv har skrevet bare ét enket XHTML-dokument, der virker.
Ingen af dem har nogensinde set et XHTML-dokument, der bliver parsed som andet en dårlig HTML. Ikke desto mindre påstår de hårdnakket - og dybt forvrøvlet - at XHTML er langt bedre end HTML.
Temmelig pinligt, når nu XHTML er komplet ubrugeligt på WWW - vil være det nogen år endnu - og fungerer betydeligt dårligere end HTML4.01  ;o)

Anyway, så kan jeg ikke se det fikse i at forsøge at få elementer, der aldrig har været beregnet til at danne søjler, til at opføre sig på samme måde som en tabel.
Så er der da først tale om dårlig og ikke-semantisk kode  :)

/mvh
</bole>
Avatar billede olebole Juniormester
19. oktober 2005 - 22:29 #12
"synes bare ikke <table>'s hører til i et design, men kun i tabeller - hvilket jo siger sig selv"

Det kan jeg simpelthen ikke få mening i. Det lyder, somom du har nogle meget aparte opfattelser af, hvad et design er - og hvad en tabel er. Jeg kan slet ikke se, hvordan du vil kunne bruge en tabel, uden den indgår i designet  :)
- og hvis man har brug for en tabels egenskaber ... må man så ikke have designet siden ... eller ...?!??!!!

Jeg kan ikke - i den kommentar - få øje på noget, der siger sig selv  :)
Avatar billede stevenizzle Nybegynder
19. oktober 2005 - 22:32 #13
Jeg mente blot at jeg selv ikke ville opstille mit layout med tabeller, da min opfattelse af tabeller er, at udelukkende bruges til at opstille et skema :)
- Det er garanteret forkert, men det er jo en smagssag, hvad man vil bruge til sit layout.

Kan man med nogle andre tags opfylde mit ønske?
Avatar billede olebole Juniormester
19. oktober 2005 - 22:53 #14
Ja, naturligvis er det da en selv, der afgør, om man vil skrive semantisk og logisk kode - eller lade være  :)

God kode har aldrig været baseret på smag og behag og/eller religiøse overbevisninger.
God kode baserer sig på indsigt, forståelse af teknologierne, godt håndværk, høj grad af semantik og logik.
Heldigvis har vi W3C - hvorfor er vi helt fri for at skulle bruge energi på at tænke på smag, behag og religiøse preferencer.

Man kan godt bruge andre tags ... men spørgsmålet er nok, om nogen gider bruge tid på en løsning, de aldrig selv kunne finde på at anvende  :)
Avatar billede olebole Juniormester
19. oktober 2005 - 22:54 #15
- men du kan kun bruge andre elementer, hvis det er inline-elementer - de har faste bredder - eller floates  :)
Avatar billede stevenizzle Nybegynder
20. oktober 2005 - 11:45 #16
kan du nævne et sådan element? :P
Avatar billede olebole Juniormester
20. oktober 2005 - 19:50 #17
- jamen, så må vi jo prøve forfra:

Du kan godt bruge div - men så skal de ændres til inline-elementer, eller de får en fast bredde og floates, eller de får en fast bredde og positioneres absolute.

Da, du ikke har lyst til det - og det kan jeg da godt forstå - har du kun tabellen tilbage. Er det virkelig _så_ svært at forstå?
Avatar billede stevenizzle Nybegynder
20. oktober 2005 - 20:04 #18
det var jo faktisk dig selv der nævnte de flere mulige tags, men som du ikke gad at bruge tid på. jeg spurgte dig blot igen, om du kunne nævne et element jeg kunne arbejde med.

synes du ikke selv, at du taler meget ned til folk?
Avatar billede roenving Novice
20. oktober 2005 - 22:31 #19
Hrm, der er jo nok lige en tavetosse eller to i indlægget 19/10-2005 22:54:53 ...

-- inline-elementer er beregnet til at blive placeret inde iblandt andre elementer, ligesom f.eks. kursiverede bogstaver midt i en tekst, og det giver derfor ingen mening, at de har en bredde, som bestemmes af andet, end den bredde, som tekst-indholdet faktisk har ...

-- floats er blok-elementer, som mod deres normale natur alligevel placeres på samme niveau, som man normalt placerer inline-elementer, men de er derfor placeret udenfor det normale dokument-flow, og omkransende elementer bør derfor ikke renderes ud fra deres egenskaber i normalt dokument-flow ...

-- det gør den mest udbredte browser desværre, hvorfor det giver en masse problemer at få ting til at fungere ens cross-browser ...

Se f.eks. http://exp.dk/spm/656908#rid5865889 !-)
Avatar billede electricnet Nybegynder
21. oktober 2005 - 23:18 #20
Hvis du vil lave to layers uden float, men ikke vil bruge tables eller inline, kan du bruge position:absolute.

Du skal wrappe et div uden om begge layers, som en slags "container". Den giver du position:relative; i CSS.

Og så kan du give dem position ved position:absolute;. Dette skriver du i CSS til begge layers. Det venstre layer kan så få top: 0; og left: 0;. Og tilsvarende kan det højre få top: 0; og right: 0;.

Så skal de begge to have en fast bredde .. og så skal container-elementet så selvfølgelig have bredden som svarer til de to layers bredde lagt sammen .. så de ikke er spredt langt væk fra hinanden.

net.
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