Styling sangat menyenangkan. Kami sebagian besar mendefinisikan kelas CSS untuk membuat gaya dapat digunakan kembali dan konsisten. Namun, terkadang kita perlu memberi gaya pada elemen sebaris. Selain itu, kita perlu mengubah gaya sebaris secara dinamis berdasarkan status aplikasi Show
Pada artikel ini, kita akan melihat cara menata elemen sebaris menggunakan atribut style. Yang lebih menarik lagi, kita akan mengeksplorasi cara mengubah gaya sebaris secara dinamis di Angular menggunakan dua alat yang sangat bergaya. mengikat ke properti style, dan direktif ngStyle. Pisang keren Anda juga dapat melihat pos kami yang lain tentang penggunaan ngClass Daftar Isi Gaya inline menggunakan atribut styleAtribut 2 adalah atribut global yang tersedia untuk semua elemen HTML. Ini memungkinkan kita memberikan informasi gaya untuk setiap elemen, dengan kata lain, memungkinkan kita menata elemen sebarisSintaksis _String yang ditetapkan ke atribut style berisi blok deklarasi style CSS. Blok deklarasi dapat memiliki satu atau lebih deklarasi. Setiap deklarasi adalah 3Deklarasi gaya CSS
Namun, saat menata inline kita tidak perlu memasang kurung kurawal untuk membuat blok. Juga, kami akan mengganti 'css-property' di atas dengan nama properti CSS yang sebenarnya Ada banyak, banyak _4 yang bisa kita gunakan. Beberapa properti CSS yang umum adalah 5, 6 dan 7Yang paling penting, gaya sebaris menggantikan gaya dalam komponen dan lembar gaya global Mari kita lihat sekilas stylesheet di Angular Stylesheet dalam AngularAngular memiliki desain modular untuk menentukan gaya. Setiap komponen memiliki stylesheet sendiri yang hanya memberi gaya pada komponen itu. Selain itu, ada lembar gaya global untuk gaya yang diterapkan ke seluruh aplikasi Mari kita lihat contohnya
Gaya sebaris untuk elemen 8 menggantikan gaya 9 dan 0 dari pemilih elemen. Hanya properti CSS yang diganti yang diganti, oleh karena itu, 8 masih mewarisi gaya padding (dan gaya kaskade apa pun dari lembar gaya global)Atribut vs PropertiSebelum kita melihat cara menata elemen secara dinamis, penting untuk menyoroti hubungan antara atribut dan properti Tanpa terlalu banyak detail, intinya adalah, atribut digunakan dalam dokumen HTML, pada waktu pengembangan, untuk mengonfigurasi elemen HTML. Namun, atribut hanya memberikan nilai awal, misalnya warna latar belakang awal dalam atribut style kita eBuku gratisArahan, sederhana kan? . Dari luar mereka terlihat sederhana, tetapi bahkan pengembang Angular yang terampil pun belum memahami setiap konsep dalam eBuku ini
Unduh Itu berjalan lancar, periksa email Anda Kita sering perlu mengubah nilai-nilai ini saat aplikasi sedang berjalan berdasarkan beberapa interaksi atau logika. Misalnya, sorot produk yang dijual dengan mengubah warna latar belakang elemen yang menampilkan produk tersebut Perubahan dinamis dibuat dengan kode JS/TS di mana elemen HTML direpresentasikan sebagai objek dan atribut direpresentasikan sebagai properti dari objek tersebut. Oleh karena itu, untuk mengubah nilai secara dinamis, kita perlu mengubah propertinya. Misalnya, untuk mengubah gaya, kita perlu mengubah nilai properti gaya Jika kita memeriksa tag _8 pada kode contoh kita di atas, kita akan melihat bahwa tag tersebut memiliki properti bernama style. Properti style juga merupakan objek dan memiliki semua 4 sebagai propertinya. Ingat, properti CSS adalah hal-hal seperti, _4, 9, 6 dan merupakan tanda pisah. Mereka adalah camelCase sebagai properti pada objek gayaSekarang, mari kita lihat bagaimana mengubah gaya sebaris secara dinamis di Angular Pengikatan properti dengan "gaya"Pengikatan properti sangat cocok saat menata hanya satu properti CSS Sintaksis
Contoh
Pertama, tanda kurung siku menunjukkan pengikatan properti dan berisi properti yang ingin kita atur dan perbarui secara dinamis Namun, binding ke properti style terlihat sedikit berbeda dari binding properti lainnya. Ini karena properti style adalah objek itu sendiri, dengan properti CSS sebagai propertinya. Oleh karena itu, kita juga perlu menentukan properti CSS yang sebenarnya untuk ditata Anda mungkin terkejut bahwa kita dapat menggunakan tanda hubung untuk properti CSS karena representasi JavaScript adalah camelCase. Angular memungkinkan kita menggunakan keduanya, tetapi lebih baik menggunakan dash-case karena konsisten dengan atribut style, dan juga, itulah yang biasa kita gunakan dalam deklarasi CSS dan juga karena Angular menyediakannya untuk kita
Bagian kedua dari pengikatan properti adalah ekspresi template. String yang ditetapkan ke binding adalah ekspresi template yang akan dievaluasi menjadi sebuah nilai Dalam kasus kami, itu harus mengevaluasi nilai properti CSS yang ingin kami tetapkan ke properti CSS. Misalnya, untuk warna latar belakang, ekspresi templat dapat dievaluasi ke nilai #dda0dd Setiap kali ekspresi template dievaluasi ke nilai yang berbeda dari sebelumnya, sistem deteksi perubahan akan menerapkan gaya baru ke tampilan ContohSaatnya untuk melihat contohnya. Karena kita berbicara tentang gaya, "pas" untuk membayangkan aplikasi sederhana yang memungkinkan pengguna menelusuri rambut dan jika mereka suka, mereka bisa mendapatkannya. Kami ingin membantu pengguna dengan menunjukkan rambut yang sedang tren dan yang harganya murah Oke, iya, ini berdasarkan lagu Ariana Grande
Itu adalah lagu yang menarik
Konteks ekspresi templatKonteks untuk ekspresi template adalah instance komponen. Artinya, ekspresi template dapat mengakses properti dan metode kelas komponen Untuk mengilustrasikannya, mari kita terapkan logika untuk mengetahui warna latar belakang dalam sebuah metode. Kami akan menyoroti item rambut dalam tiga kategori. trending, trending dan harga murah (pembeli pasti tidak mau ketinggalan), dan tidak trending tapi murah (mungkin masih layak mendapatkannya)
Kita dapat memanggil metode dalam ekspresi template
Sekarang, mari kita lihat bagaimana Angular memudahkan kita untuk mengikat properti CSS yang memerlukan ekstensi unit Properti unit opsionalBeberapa properti gaya CSS seperti font-size, margin, padding, width, height, dan banyak lainnya memerlukan satuan ukuran. Nilai untuk properti ini tidak lengkap tanpa unit atau gaya tidak akan berpengaruh
Angular memberi kami cara yang lebih bergaya untuk menyediakan unit. Kita dapat menentukan unit dalam pengikatan properti menggunakan notasi titik 0Unit lainnya termasuk 7 dan 8Saat kami tidak ingin menggunakan pengikatan properti untuk gaya inlineTidak banyak gunanya menggunakan pengikatan properti untuk mengikat ke string statis 1Gunakan atribut style jika nilainya tidak diharapkan berubah. Lebih baik lagi, kita bisa meletakkan gaya di stylesheet, bukan inline 2Menata beberapa properti gaya CSS sebarisPengikatan properti memungkinkan kita mengikat ke satu properti pada satu waktu sehingga cocok untuk menata satu properti pada sebuah elemen Jika kita ingin menata beberapa properti CSS _3Saatnya menggunakan direktif _9Arahan NgStyle AngularGunakan direktif NgStyle untuk secara dinamis menata beberapa properti CSS dari suatu elemen Sintaksis _4ngStyle diterapkan sebagai atribut ke elemen. Tanda kurung siku di sekitar direktif menunjukkan bahwa direktif NgStyle memiliki properti input yang juga disebut ngStyle. Ini adalah pola umum untuk mendefinisikan direktif dan mengikat properti inputnya secara bersamaan. Inilah cara kami meneruskan informasi gaya kami ke direktif ngStyle 5Untuk mengetahui nilai apa yang diharapkan oleh properti input, mari kita lihat bagaimana Angular mengimplementasikannya 6Seperti yang kita lihat ngStyle mengharapkan objek dengan pasangan kunci dan nilai. Kuncinya adalah nama properti CSS dan nilainya adalah ekspresi yang mengevaluasi nilai properti CSS Berikut adalah beberapa cara kita dapat meneruskan gaya sebagai masukan
_7
8
_9Sebagai catatan tambahan, dan hanya untuk penyelesaian, secara opsional kita dapat menggunakan camelCase untuk kunci, dalam hal ini kita tidak perlu memasukkannya ke dalam string. 0Namun, untuk menggunakan properti satuan opsional, kita harus menyediakan kunci dalam string _1Penting untuk konsisten Jadi, begitulah. Gunakan pengikatan properti untuk menata satu properti CSS dari suatu elemen dan gunakan direktif ngStyle untuk menyetel beberapa properti CSS. Kedua alat membuatnya sangat mudah untuk menata elemen secara dinamis Untuk mempelajari lebih banyak teknik, praktik terbaik, dan pengetahuan pakar dunia nyata, saya sangat merekomendasikan untuk memeriksa kursus Angular saya - mereka akan memandu Anda melalui perjalanan Anda untuk menguasai Angular sepenuhnya Bagaimana cara mengatur kelas CSS secara dinamis di Angular?Menetapkan kelas CSS secara dinamis di AngularJS . Jika string - itu harus berupa nama kelas yang dibatasi ruang (untuk mengatur beberapa kelas ke elemen) Jika objek berisi pasangan kunci-nilai - kunci dianggap sebagai nama kelas dan jika nilainya benar maka kelas ditetapkan Bagaimana cara mengubah kelas CSS di Angular?Memanipulasi Kelas CSS di Angular . Menggunakan properti ngClass dengan tipe string Menggunakan properti ngClass dengan tipe array Menggunakan properti ngClass dengan objek tipe Menggunakan properti class dengan tipe string Bagaimana cara menerapkan kelas dinamis di Angular?Menetapkan Kelas Dinamis dengan NgClass . Class Toggling melalui [className] Pengikatan Properti. . Memasok string atau string[]. Menggunakan Ekspresi yang Dievaluasi. . Menggunakan Operator Terner Manakah dari berikut ini yang memungkinkan kita menambahkan CSS ke elemen DOM di Angular?The . pemilih root memungkinkan Anda menerapkan gaya CSS hanya ke elemen app-root. |