Autor Zpráva
Radek73
Profil
Docela by mne zajímalo, jak se to dělá když mám dejme tomu 40x za sebou   - jak se to dělá, existuje něco co by se jednoduše napsalo že tam chci třeba 40x za sebou tvrdou mezeru?
Bubák
Profil
Radek73:
existuje něco co by se jednoduše napsalo že tam chci třeba 40x za sebou tvrdou mezeru?
Cyklus. Třebas v PHP nebo v JS.

Na co potřebuješ 40× za sebou pevnou mezeru? Já něco takového potřeboval v době, kdy jsem neuměl CSS.
lionel messi
Profil
Radek73:
Možno ti lepšiu službu než 40 pevných medzier urobia Okraje objektů - margin a padding
Radek73
Profil
Mně konkrétně by zajímalo, jak je to u BUTTON, když chcete mít třeba to políčko hodně široké.
juriad
Profil
Tak mu nastavím šířku:
http://kod.djpw.cz/vdeb
Radek73
Profil
Takže v praxi to pak vypadá nějak takhle:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title>CSS-button</title>
<style type="text/css">
/* <![CDATA[ */
button { width:40em; }
/* ]]> */
</style>
</head>
<body>
<button>Vagónek Tobi</button>
</body>
</html>

myslel jsem že k CSS ještě dojdu, zatím dělám HTML ale přesto to mám trochu něco dopředu.Díky.
Bubák
Profil
juriad:
Tak mu nastavím šířku:
Anebo padding:
http://kod.djpw.cz/ydeb
Záleží na situaci, co je kdy vhodnější.
joe
Profil
Asi ještě vhodnější mi přijde min-width.
Tomáš123
Profil
joe:
Asi ještě vhodnější mi přijde min-width.
Prečo?...Táto vlastnosť nemá podporu v starších prehliadačoch a navyše vôbec nie je potrebná. To nie je ako s divom, ktorý chce byť cez cez celú obrazovku a rozťahovať sa ak je obsahu viac.

Radek73:
Ak nechceš text v danom <button>e často meniť (či už pomocou nejakého skriptu, ale manuálne) bude lepšie mu v CSS nastaviť šírku. V opačnom prípade je lepšie použiť Bubákom spomínaný padding.

Úprava:
Padding je vhodný aj v prípade stabilnej šírky...záleží len na osobnej preferencii alebo na odpovedi na otázku, či ti je jedno aký je vnútorný okraj objektu a záleží ti iba na šírke (prípad, kedy chceš daný button zapracovať do dizajnu) alebo vyžaduješ mať rovnaký vnútorný okraj na obidvoch resp. na všetkých stranách.
joe
Profil
Tomáš123:
Protože je správné dělat věci dynamické a když zadáš text, který bude přesahovat jeho šířku, budeš chtít, aby se tlačítko roztáhlo. Řešit Internet Explorer 6 v dnešní době je akorát ztráta času.
Tomáš123
Profil
joe:
Protože je správné dělat věci dynamické a když zadáš text, který bude přesahovat jeho šířku, budeš chtít, aby se tlačítko roztáhlo.
hmm, ako rozmýšľam, tak rozmýšľam, no stále v tom nevidím kladný rozdiel oproti paddingu (aby bolo jasné, hovorím o konkrétnom prípade):
- má okraj odstup od textu?...Má;
- rozťahuje sa daný prvok v prípade zmene obsahu?...Rozťahuje.
Tak potom?

Záporný rozdiel je ten, že padding má lepšiu podporu.
joe
Profil
Tomáš123:
Pokud máš dvě tlačítka vedle sebe, jedno s textem "OK" a druhé například "Storno", pak by nebyla tlačítka stejně široká. Nevypadalo by to hezky. Tzn., že padding by tam měl být taky, aby při delším textu nebyl nalepený úplně ke kraji tlačítka.
Tomáš123
Profil
joe:
Teraz s tebou súhlasím.
joe
Profil
Tomáš123:
Tím jsem ale vůbec nezavrhnul min-width, naopak.
Tomáš123
Profil
joe:
Tím jsem ale vůbec nezavrhnul min-width, naopak.
Ja som si to všimol, ale uviedol si lepší argument. Je lepšie raz použiť min-width ako vytvárať dve triedy.

Ale keď tak rozmýšľam, prečo by nemohla v tebou uvedenom prípade byť nastavená dvojica width+padding? Obsah by bol predsa nemenný.
joe
Profil
Tomáš123:
Teď nevím jestli se chápeme, pokud chci natahovací tlačítko, pak bych použil:

.button {
    display: inline-block;
    min-width: 86px;
    padding: 0 12px;
    line-height: ...
}
Tomáš123
Profil
joe:
Teď nevím jestli se chápeme, pokud chci natahovací tlačítko, pak bych použil:
Chápeme sa...Ja sa len snažím poukázať na fakt, že len asi v jednom zo sto prípadov, bude lepšie použiť min-width(+padding) namiesto obyčajného width+padding.

.button {...}
Viem si vytvoriť naťahovacie tlačítko, ale riešime tu predsa otázku, kedy to potrebné je a kedy nie. Zatiaľ tu nebol uvedený príklad, kde by sme sa bez width+padding nezaobišli.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0