Autor Zpráva
starek4
Profil *
Dobrý den,

edituji jeden web, kde jsem v CSS našel tyto sekvence:

input[type="checkbox"],input[type="radio"]{
  display:none;
}

input[type="checkbox"]+label,input[type="radio"]+label{
  cursor:pointer;
}
input[type="checkbox"]+label:before,input[type="radio"]+label:before{
  content:"";
  display:inline-block;
  height:19px;
  margin:-1px 4px 0 0;
  vertical-align:middle;
  width:19px;
}
input[type="checkbox"]+label:before{
  background:url("{T_THEME_PATH}/images/radio-check.png")left top no-repeat;
}
input[type="checkbox"]:checked+label:before{
  background:url("{T_THEME_PATH}/images/radio-check.png")-19px top no-repeat;
}
input[type="radio"]+label:before{
  background:url("{T_THEME_PATH}/images/radio-check.png")-38px top no-repeat;
}
input[type="radio"]:checked+label:before{
  background:url("{T_THEME_PATH}/images/radio-check.png")-57px top no-repeat;
}
input[type="checkbox"]:checked+label,input[type="radio"]:checked+label{
  font-weight:bold;
}


.selector, .checker, .button, .radio, .uploader {
    display: inline-block;
    vertical-align: middle;
}

.controls > .radio, .controls > .selector, .controls > .checkbox {
    display: inline-block;
    margin: 5px 15px 10px 0 !important;
    padding: 0 !important;
    
}

Pokud smažu část CSS, kde je display:none;, checkbox se mi někde zobrazí, ale jinde se jich zobrazí více.
Otázka tedy zní, jak upravit tento (níže) HTML kód, aby mi ukázal Checkbox bez úpravy CSS?
<label for="mChatUseSound">{L_MCHAT_USESOUND} <input type="checkbox" <!-- IF S_MCHAT_SOUND_YES -->checked="checked"<!-- ENDIF --> /></label>

Předem díky za odpověď :)
Tomáš123
Profil
starek4:
Otázka tedy zní, jak upravit tento (níže) HTML kód, aby mi ukázal Checkbox bez úpravy CSS?
Možno som vašu otázku nepochopil úplne správne. Snáď je moja odpoveď relevantná:
HTML kód sa dá upraviť následovne:
<label for="mChatUseSound">{L_MCHAT_USESOUND} <input type="checkbox" style="display:block" <!-- IF S_MCHAT_SOUND_YES -->checked="checked"<!-- ENDIF --> /></label>

Ale múdrejšie by bolo manipulovať so súborom CSS. Pridávať do HTML súboru definície štýlov CSS (inline zápisom) je nečisté riešenie. Pravda môže byť účinné v prípade ak potrebujete vytvoriť neprebiteľnú vlastnosť.

Ak som vašu otázku nepochopil správne, prosím objasnite ju.
starek4
Profil *
Otázku jste pochopil správně, a moc Vám děkuji za odpověď. Stydím se, že mne to nenapadlo rovnou, jsem začátečník. Místo "block" jsem nakonec použil "inline", ale bez Vašeho nástřelu bych se k tomu nedopídil.

Ještě jednou děkuji za radu, řešení je sice kostrbaté, ale jde jen pouze o jeden prvek, který je třeba takto ošetřit.

Hezký zbytek dne všem!
Dobrota
Profil *
Zajímalo by mě, zda jde pomocí kaskádového stylu změnit checkbox z prázdného na checked. Můžete prosím uvést příklad zápisu. Anebo musím změnit zdrojový kód?
juriad
Profil
Dobrota:
Není to možné. CSS ovlivňuje jen vzhled, nikoli stav formulářových prvků. Můžeš toho docílit jen v HTML (atributem checked) nebo v JS (vlastností checked). O co přesně se snažíš (proč to potřebuješ)?

Příště si raději založ vlastní vlákno, tvůj problém se netýká (ne)zobrazování checkboxů.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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