:read-write
In :read-only
selektor sta dva spremenljivost psevdo-razredi, katerih cilj je, da bi obrazec styling lažje osnovi disabled
, readonly
in contenteditable
HTML atributi. Čeprav podpora za brskalnik ni tako slaba, so različne izvedbe precej neugodne.
V skladu z uradnimi specifikacijami CSS se bo :read-write
izbirnik ujemal z elementom, kadar:
- je bodisi an,
input
ki imareadonly
nitidisabled
atribute. - je a,
textarea
ki nima nitireadonly
nedisabled
- je kateri koli drug element, ki ga je mogoče urejati (zahvaljujoč
contenteditable
atributu)
Sintaksa in primer
/* Any element that is not writable */ :read-only ( ) /*… so you might want to scope it */ input:read-only, textarea:read-only, (contenteditable):read-only ( cursor: not-allowed; ) /* Any enabled text input or enabled textarea or element with the contenteditable attribute */ :read-write ( background: white; cursor: text; )
Podpora za brskalnik
Ti podatki o podpori brskalnika so od Caniuse, ki vsebuje več podrobnosti. Številka pomeni, da brskalnik podpira to funkcijo v tej različici ali novejši.
Namizje
Chrome | Firefox | IE | Rob | Safari |
---|---|---|---|---|
36 | 3 * | Ne | 13. | 9. |
Mobilni / tablični računalnik
Android Chrome | Android Firefox | Android | iOS Safari |
---|---|---|---|
88 | 85 | 81 | 9,0-9,2 |
Obstaja velika razlika med tem, kar je priporočeno v specifikacijah, in tem, kar brskalniki dejansko počnejo. Če se na primer držimo specifikacij, bi moral nekvalificirani izbirnik ciljati na vsak element, ki ga lahko ureja uporabnik, vendar ga onemogoči ( disabled
ali readonly
) ali preprosto ni uporabniško urejen :read-only
.
Chrome | Firefox | Safari | Opera | |
---|---|---|---|---|
input | :brati, pisati | :brati, pisati | :brati, pisati | :brati, pisati |
input(disabled) | :brati, pisati | :brati, pisati | :brati, pisati | :brati, pisati |
input(readonly) | :le za branje | :le za branje | :le za branje | :le za branje |
(contenteditable) | - | :brati, pisati | - | :le za branje |
* | - | :le za branje | - | :le za branje |
Medtem se zdi, da to počne le Firefox in očitno tudi ne preveč dobro, saj meni, da je disabled
vložek :read-write
. Glede Opera, ki contenteditable
elementa ne označi kot :read-write
, je preprosto zato, ker ne podpira contenteditable
.