Autor Zpráva
kuba123
Profil *
Mám rozvržený formulář asi v tomto stylu:

<div class="main_content">
    <b>popis sloupce 1:</b>
    <textarea id=text_1></textarea>
    <a href="...">klikni sem</a>
    <BR>
    ... níže se opakují podobné prvky 
</div>
V levém sloupci jsou popisy sloupců, vpravo od popisů jsou vstupní pole a vpravo jsou odkazy. To se vygenerovalo během cyklu v PHP.

Potřebuju pod ten levý sloupec a pravý sloupec dostat dva prvky, které budou v podstatě tvořit pozadí. Dotaz zní jestli to jde udělat a jestli to jde udělat pouze pomocí divů.

Můj kód se pokoušel o toto:
<div id=left></div><div id=right></div>
Nulový úspěch.
  div#left, div#right {
    display:inline;
    background-color:lightgray;
    line-height:2000;
    margin:59;padding:59;
    width:59px;
    }
  div#left {
    position:relative; left:0; top:0; 
    }
  div#right {
    }

Ještě to doplním o informaci, že z daných Divů chci spouštět JS funkci, takže proto chci vytvořit dva sloupce jdoucí přes celou stránku na výšku.
Jansvabik
Profil
Dobrý den,

každému divu mastavíte hodnotu v CSS: z-index.

Z-index

Tomu, co chcete, aby bylo pod něčím jiným nastavíte v CSS z-index: 1; a tomu, co chcete, aby bylo nad tím, nastavíte z-index: 2;

Moderátor jenikkozak: Prosím, bez podpisů.
kuba123
Profil *
Jansvabik:
A musím nastavit těm divům display inline nebo display block? Vzhledem k tomu, že ostatní jsou block.

textarea, input, span, form b, a {
    display: block;
    float: left;
}

Když dávám divům display block, tak se mi vlevo nahoře ukáže div a formulář je až úplně dole.
peta
Profil
.main_content {}
.main_content>div {background-image:url(2.jpg)}
.main_content>div>div {background-image:url(1.jpg)}
<div class="main_content"><div><div>
    <b>popis sloupce 1:</b>
    <textarea id=text_1></textarea>
    <a href="...">klikni sem</a>
    <BR>
    ... níže se opakují podobné prvky 
</div></div></div>
Jestli mas ale se sloupci problem, pouzij tabulku.
kuba123
Profil *
peta:
To je ale něco jiného než jsem chtěl. Ty zanořuješ div do div a to je rozdíl. Tím pádem zaplňuješ všechny tři sloupce. Já chtěl vytvořit sloupce, tzn. ve sloupci kde leží layout nesmí být ten div který jsem přidal. Potřebuju aby ty divy ležely pod sloupcem vlevo a pod sloupcem vpravo.

Zkoušel jsem z-index ale něco tomu chybí protože je-li div blokový a ostatní prvky jsou taky blokové, pak se to zalomí pod sebe.


Oprava, ve sloupci kde leží textarea nesmí být ten přidaný div...
margin
Profil *
kuba123:
A musím nastavit těm divům display inline nebo display block? Vzhledem k tomu, že ostatní jsou block.
Floatované elementy se chovají jako bloky, je zbytečné je explicitně deklarovat jako bloky.
DIV je blokový element, je zbytečné jej explicitně deklarovat jako blok.

Potřebuju pod ten levý sloupec a pravý sloupec dostat dva prvky, které budou v podstatě tvořit pozadí.
Má to jiný účel, než vytvořit pozadí? Pokud by šlo jen o pozadí, určitě by to šlo i jednodušeji.

Čeho chceš vlastně dosáhnout, zatím mám dojem, že sháníš radu, jak se drbat levou nohou za pravým uchem.
kuba123
Profil *
margin:
Četl jsi tu větu dole?

Ještě to doplním o informaci, že z daných Divů chci spouštět JS funkci, takže proto chci vytvořit dva sloupce jdoucí přes celou stránku na výšku.


margin:
Mám z toho dojem, že když vytvořím blokový element tak to nejde podsunout pod jiný blokový element. Alespoň mě se to nedaří ani s tím z-indexem.
margin
Profil *
kuba123:
Četl jsi tu větu dole?
Myslíš s tou JS funkcí? Nějak mi uniká, proč by JA funkce měla být spouštěná ze dvou DIVů, navíc pokud budou překryté formulářem.

Mám z toho dojem, že když vytvořím blokový element tak to nejde podsunout pod jiný blokový element.
Kombinuješ z-index s pozicováním? To je totiž naprosto samozřejmé a možná proto pozicování nikdo nezmínil.
kuba123
Profil *
margin:
Nemusíš nad tím dumat k čemu potřebuju funkci spouštět ze dvou divů, když jsou mimo formulář. Prostě to tak je.

No nevím, stále mi to nějak nefunguje. Zde jsou styly pro ty divy. To pozadí jen dočasně zvýrazňuje kde se divy nachází, abych je viděl. Z-index jsem snad ještě nepoužíval, takže nevím co je k tomu samozřejmé.

  div#left, div#right {
    z-index: 1;
    position:relative;
    background-color:lightgray;
    height:2000;
    width:59px;
    }
  div#left {
    left:0; top:0;
    }
  div#right {
    right:0; top:0;
    }



A zbytek
  a, b, span, textarea {
            z-index: 2;
            }



Stále mi ten div (id right) visí nahoře (id left nevím kde je, nevidím ho.


Jo tak, levý skončil nahoře, pravý skončil pod ním a formulář úplně dole...


Ještě jsem zkoušel toto:

div#left  {
    float: left;
    left: 10px;
    top: 0;
}
div#right  {
    float: right;
    right: 10px;
    top: 0;
}

Ale to oba sloupce úplně zmizely.
kuba123
Profil *
Asi vyřešeno. Dal jsem position absolute, a nastavil to zleva a už to jede. Z index se zdá že nefunguje, ale když smažu to pozadí tak to vypadá dobře.


Tak nevím, zas mi ten pravý sloupec zmizel při tomto nastavení:

div#right {
    background-color: white;
    left: 150px;
    top: 50px;
}
polohy2 (řádek 259)
div#left, div#right {
    height: 2800px;
    position: absolute;
}

Levý jsem dal jinou barvou a nemohu ho najít! Co s tím?
kuba123
Profil *
OK. Mám to hotovo. Zas jsem tam neměl nastavenou šířku tak proto to zmizelo.
jenikkozak
Profil
Přidáš odkaz? Z toho zadání jsem asi nepochopil, o co vlastně šlo.
kuba123
Profil *
jenikkozak:
Nemám to nahrané na webu. Šlo o to dostat do formuláře dva sloupce, doleva a doprava. V těch sloupcích nic není, ale překrývají pole formulářů (sloupec vlevo a vpravo). Ve výsledku není nastavené žádné pozadí, takže se jedná o neviditelné sloupce, které tam jsou jen kvůli JS.
peta
Profil
kuba123: Ano, zanoruji je do sebe. Kazdemu muzu dat pozadi z poloviny pruhledne a nafinguje to tak 2 sloupce.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: