Ini seharusnya masalah sederhana, tetapi saya tidak dapat menemukan solusi.
Saya memiliki markup berikut:
<div style="width:20px; height:20px; margin-top:10px; border:solid 1px black; background-color:#ff0000;"></div>
Saya membutuhkan warna latar belakang untuk terikat ke ruang lingkup, jadi saya mencoba ini:
<div style="{width:20px; height:20px; margin-top:10px; border:solid 1px black; background-color:{{data.backgroundCol}};}"></div>
Itu tidak berhasil, jadi saya melakukan beberapa penelitian dan menemukan ng-style
, tetapi itu tidak berhasil, jadi saya mencoba mengeluarkan bagian dinamis dan hanya melakukan pengkodean gaya ng-style
, seperti ini ...
<div ng-style="{width:20px; height:20px; margin-top:10px; border:solid 1px black; background-color:#ff0000;}"></div>
dan itu bahkan tidak berhasil. Apakah saya salah paham tentang cara ng-style
kerjanya? Apakah ada cara untuk memasukkan {{data.backgroundCol}}
atribut gaya biasa dan membuatnya memasukkan nilai?
javascript
angularjs
ng-style
jonhobbs
sumber
sumber
Jawaban:
Direktif ngStyle memungkinkan Anda untuk mengaturgaya CSS pada elemen HTML secara dinamis.
ng-style="{color: myColor}"
Kode Anda akan menjadi:
Jika Anda ingin menggunakan variabel lingkup:
Berikut contoh biola yang digunakan
ngStyle
, dan di bawah kode dengan cuplikan yang sedang berjalan:sumber
Cara termudah adalah memanggil fungsi untuk gaya, dan meminta fungsi mengembalikan gaya yang benar.
Dan di pengontrol Anda:
sumber
Langsung dari
ngStyle
dokumen :Jadi Anda bisa melakukan ini:
Semoga ini membantu!
sumber
Pada catatan umum, Anda bisa menggunakan kombinasi ng-if dan ng-style yang menggabungkan perubahan bersyarat dengan perubahan pada gambar latar belakang.
sumber
Saya akan mengatakan bahwa Anda harus meletakkan gaya yang tidak akan berubah menjadi
style
atribut biasa , dan gaya bersyarat / lingkup menjading-style
atribut. Selain itu, kunci string tidak diperlukan. Untuk kunci CSS yang dipisahkan tanda hubung, gunakan huruf unta.sumber
Cukup lakukan ini:
sumber