Homepage » Coding » Gróf HTML állapot A valós idejű változások a CSS-rel

    Gróf HTML állapot A valós idejű változások a CSS-rel

    A számlálás mindenütt fontos feladat webes alkalmazásokban. Hány olvasatlan e-mail van? Hány feladatot hagynak figyelmen kívül a teendők listájában? Hány fánkízst csomagolnak a kosárba? Minden olyan kulcsfontosságú kérdés, amelyet a felhasználók megérdemelnek.

    Tehát ez a hozzászólás megmutatja, hogyan kell számítsuk ki a bi-kijelölt elemeket, amelyek a felhasználói vezérlések többségét jelentik, mint a jelölőnégyzetek és a szövegbevitel, CSS számlálók használatával.

    Neked kell Először a CSS-t célozza meg, ami lehetséges a pszeudo-osztályok és HTML-attribútumok ez lehetővé teszi számunkra, hogy csak ezt tegyük. Menj előre, és próbáld ki az ötletet, és fedezd fel a különböző pszeudo-osztályokat, amelyek dinamikusan jelezhetik egy elem állapotának változását.

    Kezdjük a legegyszerűbb jelölőnégyzetekkel.

    1. Jelölőnégyzetek

    A jelölőnégyzetek bekerülnek “kockás” állapítsa meg, hogy ki van jelölve. A : ellenőrzött pseudo-class jelzi az ellenőrzött állapotot.

      jelölőnégyzet # 1
    jelölőnégyzet # 2
    jelölőnégyzet # 3

    ellenőrzött:
    Nem ellenőrzött:
     :: root counter-reset: tickedBoxCount, unTickedBoxCount;  bemenet [type = 'checkbox'] counter-increment: unTickedBoxCount;  bemenet [type = 'checkbox']: ellenőrzött counter-inrement: tickedBoxCount;  #tickedBoxCount :: előtt tartalom: számláló (tickedBoxCount);  #unTickedBoxCount :: előtt tartalom: számláló (unTickedBoxCount);  

    Mint korábban mondtam, ez az ügy nagyon egyszerű. Mi állítson két számlálót a gyökérelemre és a két állapot minden egyes jelölőnégyzetére növekszik. Ekkor a számláló értékek egy kijelölt helyen jelenik meg tartalom ingatlan.

    Ha jobban meg akarod érteni hogyan működik a CSS, nézd meg az előző üzenetünket.

    Az alábbiakban látható a végeredmény. Ha bejelöli a jelölőnégyzeteket, jelölje be az értékeket “kockás” és “Nem ellenőrzött” számlálók valós időben módosított.

    2. Szövegbevitel

    Azt is számíthatjuk, hogy hány szövegbevitelt kitöltötték és hány üresek maradtak a felhasználó által. Ez a megoldás nem lesz olyan egyszerű, mint az előző, mert a jelölőnégyzetekkel ellentétben, A szövegbevitel nem rendelkezik pszeudo-osztályokkal jelezni, amikor megteltek.

    Szóval alternatív útvonalat kell találnunk. Van egy pszeudo-osztály jelzi, ha egy elem helyőrző szöveget tartalmaz; ezt hívják : Helyőrző ábrázolt.

    Ha szövegbevitelünkben helyőrzőket használunk, tudjuk, hogy mikor van üres a beviteli mező. Ez akkor történik, ha a felhasználó még nem írt semmit mert a helyőrző eltűnik, amikor ez megtörténik.

     



    Megtöltött:
    Üres:
     :: root counter-reset: fillInputCount, üresInputCount;  input [type = 'text'] counter-increment: fillInputCount;  input [type = 'text']: helyőrző látható counter-increment: emptyInputCount;  #filledInputCount :: előtt tartalom: számláló (fillInputCount);  #emptyInputCount :: előtt tartalom: számláló (üresInputCount);  

    Az eredmény hasonló az előző két számlálóhoz automatikusan növekszik és csökken szöveget hozzáadunk vagy eltávolítunk a beviteli mezőkbe.

    3. Részletek

    Egy elem alternatív állapotát nem mindig csak pszeudo-osztályok jelzik. Ott lehet A HTML-attribútumok ezt a feladatot elvégzik, mint a

    elem.

    A

    elem megjeleníti a tartalmát gyermek elem. Ha a felhasználó rákattint erre, a
    elem láthatóvá válik. Vegye figyelembe, hogy elem mindig először kell jönnie a gyermekek között
    .

    Így,

    két állam van: nyitott és zárt. A nyitott állapotot a jelenléte nyisd ki HTML attribútum az elemben. Ez az attribútum a CSS uénekelje az attribútumválasztóját.

     
    1. kérdés: 1. kérdés

    válasz # 1

    2. kérdés: 2. kérdés

    válasz # 2

    3. kérdés: 3. kérdés

    válasz # 3



    Nyisd ki:
    Zárva:
     :: root counter-reset: openDetailCount, zártDetailCount;  részletek counter-increment: zártDetailCount;  részletek [open] counter-increment: openDetailCount;  #closedDetailCount :: előtt tartalom: számláló (zártDetailCount);  #openDetailCount :: előtt tartalom: számláló (openDetailCount);  

    Az eredmény az két valós idejű CSS számláló ismét: Nyitott és Zárt.

    4. Rádió gombok

    A rádió gombok számlálása más technikát igényel. Biztosan használni tudnánk : ellenőrzött pszeudo-osztály, amelyet jelölőnégyzetekhez használtunk. A rádió gombok azonban másként, mint a jelölőnégyzetek.

    A rádió gombok csoportokban kell lennie. A felhasználó csak egy csoportot választhat a csoporton belül. Minden csoport egyetlen egységként működik. A két állam egy rádió gombcsoport is lehet az egyik gomb kiválasztása vagy egyikük sem lett kiválasztva.

    Tehát nem szabad egyéni gombokkal számolni a rádiógombokat, hanem gombcsoportok szerint. Ennek eléréséhez használja a : N-edik-of-típusú választó. Később elmagyarázom; lássuk először a kódot.

     rádió-1.1 rádió-1.2 rádió-1.3 
    rádió-2.1 rádió-2.2 rádió-2.3
    rádió-2.1 rádió-2.2 rádió-2.3

    Kiválasztott:
    Nincs kijelölve:

    Meg kell adja meg ugyanazt a nevet ugyanazon csoport rádió gombjaira. A fenti kódban minden egyes csoportnak három belső gombja van.

     :: root counter-reset: kiválasztottRadioCount, unSelectedRadioCount;  bemenet [type = 'radio']: nth-of-type (3n) counter-increment: unSelectedRadioCount;  bemenet [type = 'radio']: nth-of-type (3n): ellenőrzött counter-increment: selectedRadioCount;  bemenet [type = 'radio']: nem (: nth-of-type (3n)): ellenőrzött counter-increment: unSelectedRadioCount -1 kiválasztottRadioCount;  #selectedRadioCount :: előtt tartalom: számláló (kiválasztottRadioCount);  #unSelectedRadioCount :: előtt tartalom: számláló (unSelectedRadioCount);  

    A fenti töredék első három stílusszabálya megegyezik a jelölőnégyzetekre alkalmazott kiviteli szabályokkal, kivéve a célzás helyett minden Rádiógomb, minden csoportban az utolsó rádió gombot célozzuk meg, ami a harmadik a mi esetünkben (: N-edik-of-típusú (3n)). Tehát nem számítunk minden rádiógombot, de csak egy csoportonként.

    Ez azonban nem ad helyes valós idejű eredményt, mint mi még nem adott meg szabályt a csoport másik két rádió gombjának számlálására. Ha az egyiket ellenőriztük, meg kell számolni, és a nem ellenőrzött eredmény egyidejűleg csökken.

    Ezért mi vagyunk add a -1 érték után unSelectedRadioCount az utolsó stílusszabályban, amely a csoport másik két rádió gombját célozza meg. Amikor az egyiket ellenőrzi, -1 akarat csökkentse a nem ellenőrzött eredményt.

    A számok elhelyezése

    Csak a helyes eredményt láthatja a számlálás befejezése után, vagyis miután a számlálandó elemeket feldolgozták. Ezért kell elhelyeznünk azt az elemet, amelyen belül megjelenítjük a számlálókat csak a számlálandó elemek után a HTML forráskódban.

    Előfordulhat, hogy nem szeretné megjeleníteni a számlálókat az elemek alatt, de máshol az oldalon. Ebben az esetben szükség van a számlálók áthelyezésére CSS tulajdonságokkal, például fordít, margó, vagy pozíció.

    De az én javaslatom lenne használja a CSS Grid-et így létrehozhatja az oldal elrendezését a HTML forráskódban lévő elemek sorrendjétől függetlenül. Például könnyen létrehozhat egy rácsot, amely a számlálókat a beviteli mezők fölé vagy mellé helyezi.