Vreau sa precizez ca codul din fisierul GLSSCanvas.js nu este scris de mine iar in fisierul GLSSCanvas copy codul este scris de mine de la linia 1694 in jos Fata de prezentare tab ul Browse se incarca dintr un fisier json
- Fisiere separate pentru HTML si CSS
- Conținutul site-ului trebuie să aibă sens (nu îl umpleți cu Lorem ipsum)
- Nu este acceptată folosirea de frameworkuri și biblioteci
- Trecerea testelor de validare HTML http://validator.w3.org/
- Folosirea tagurilor semantice prezentate la curs/laborator
- Trecerea testelor de validare CSS https://jigsaw.w3.org/css-validator/
- Folosirea selectorilor CSS de bază (după id, clasă, tag, elementContinut, elementCopil, al n-lea copil de tipul unui tag :nth-of-type)
- Specificarea proprietăților: width, height, color, background, font-size, border, padding, margin, display etc.
- Folosirea coloanelor pentru layoutul a cel puțin unei pagini; realizarea layoutului fără tabele (folosind flex și grid)
- Folosite in sectiunea/butoanele de 'Curiosities'
- Site-ul trebuie să conțină un menu drop-down (sau altfel expandabil) realizat cu CSS -Meniul exista doar pentru versiunea de mobil a site-ului
- Site-ul trebuie să conțină o tranziție care implică schimbarea mai multor proprietăți la intervale diferite de timp
- Site-ul trebuie să conțină o animație care să modifice mai multe proprietăți ale aceluiași element
- Call to actionul de la inceputul paginii
- !Bonus point! pentru generarea conținutului folosind :after, :before (dar să aibă sens; fiți creativi)
- Call to actionul de la inceputul paginii
- Fișier separat pentru codul JavaScript
- Modificarea stilului unui element sau al unui grup de elemente
- Manipularea DOM-ului (selectare după id, tag, clasă, folosind selectori CSS)
- Crearea și stergerea de elemente HTML
- Folosirea și modificarea evenimentelor generate de mouse si tastatură
- Modificare de proprietăți
- Inputuri funcționale (de exemplu: input de tip text/range/number/radio/checkbox, select, textarea)
- Folosirea setTimeout sau setInterval
- Folosirea localStorage (să se pastreze în localStorage o colecție de elemente) -pentru a stoca codul in sectiunea your code
- Folosirea a cel puțin unei metode din clasele: Math, Array, String, Date
- Folosit pentru a randomiza culoarea erorilor
- Schimbarea aleatoare a valorilor unei proprietăți (de exemplu: culoare, dimensiuni, poziție)
- Schimbarea culori erorilor
- Folosirea proprietăților classList, target sau currentTarget
- Folosirea metodelor getComputedStyle, stopPropagation
- Validarea datelor dintr-un formular folosind expresii regulate
- Cereri Ajax cu preluare date dintr-un fișier json
- Sesiuni: e.g. login/logout (folosind Storage / fișier json)
- Salveaza codul programului