Saya hanya ingin mendengar beberapa otoritas tentang kapan dan di mana Anda harus menggunakan LITERAL
kontrol atas a LABEL
.
Seperti yang saya pahami, perbedaannya adalah ini: A LABEL
dapat diberi gaya melalui <SPAN>
tag yang ditambahkan.
Saya pribadi menemukan penambahan <SPAN>
tag di HTML saya menjadi sangat menjengkelkan dan tidak pernah benar-benar menerapkan gaya melalui ASP, dan LITERAL
s tampaknya apa yang harus digunakan sebagian besar waktu ... tapi aku khawatir ada lain pertimbangan atau keuntungan untuk menggunakan LABEL di atasnya yang tidak saya sadari.
Apakah 100% baik-baik saja untuk mengganti sembarang LABEL
s dengan LITERAL
s, asalkan kita tidak menerapkan gaya padanya? Apakah TIDAK ada pertimbangan lain?
Label
Kontrol ASP.Net harus selalu digunakan saat Anda menginginkan<label>
elemen HTML . Selain itu, Label merender teks antara<spans>
, Literal tidak, dan Literal memberi Anda kontrol lebih besar atas bagaimana teks ditampilkan. Tidak ada peristiwa khusus pada kedua kontrol, dan isinya dapat diakses di belakang kode dengan cara yang persis sama (melaluiText
properti).Label
kontrol, Anda dapat menambahkanAssociatedControlID
atribut dengan ID dari kotak centang atau tombol radio yang terkait dengan label. Dengan cara itu Anda dapat mengklik label, dan kontrol terkait akan diaktifkan. Memperbesar area target yang dapat diklik juga akan membuat antarmuka pengguna lebih mudah digunakan.Jika Anda memiliki kode yang mirip dengan
Optimal menggunakan elemen label karena akan mengubahnya dengan benar menjadi
label
elemen html denganfor
atribut yang benar yang menargetkan kotak teks Anda, sehingga jika pengguna mengklik label, kursor mereka akan otomatis diatur ke dalam bidang teks.Jika tidak, gunakan literal kecuali jika teks dibungkus dengan a
span
akan bermanfaat untuk gaya css.sumber
Untuk menampilkan teks sederhana, teks yang diformat atau teks HTML apa adanya saya akan mulai dengan literal terlebih dahulu karena ringan dan tidak mengeluarkan tag SPAN tambahan.
Lihat video ini yang menunjukkan tentang tag tambahan tersebut.
Tetapi kita tidak dapat menerapkan CSS secara literal, kita tidak dapat menambahkan atribut seperti Label1.Attributes.Add ke literal. Semua hal yang berorientasi kontainer tidak dapat dicapai karena literal tidak dikelilingi oleh tag SPAN.
Ini juga menyedihkan melihat banyak orang ASP.NET Webform secara default memilih label untuk menampilkan teks tanpa mengetahui bahwa itu menghasilkan tag SPAN tambahan yang dapat membuat HTML Anda berat jika Anda memiliki banyak label.
sumber
Perbedaan b / w Label dan Kontrol Literal di asp.net
Dalam hampir semua hal, Kontrol literal sama dengan kontrol Label. Kedua kontrol ini digunakan untuk menampilkan Teks di formulir web. (Properti Teks dapat diatur dalam HTML atau di belakang kode.)
Perbedaan terbesar adalah bahwa kontrol Label membungkus teks dalam huruf a
span
saat dirender. Gaya apa pun yang diterapkan ke kontrol Label, akan dirender menggunakanstyle
properti darispan
.Misalnya HTML berikut
Akan dirender sebagai
<span id="Label1" style="color:Red;font-weight:bold;">Label Text</span>
Kontrol literal tidak mengeluarkan tag di sekitarnya, sehingga Teks ditampilkan seperti:
Misalnya HTML berikut
akan dirender sebagai
Literal Control Text
Jadi, jika Anda ingin menerapkan gaya apa pun ke daripada gunakan kontrol Label jika tidak gunakan kontrol Literal. Karena itu, kontrol Literal adalah kontrol bobot yang ringan, jika dibandingkan dengan kontrol Label.
FYI: Hierarki pewarisan untuk kelas kontrol Literal adalah (Object => Control => Literal) , sedangkan untuk kontrol Label, hierarkinya adalah (Object => Control => WebControl => Label)
sumber
mode="PassThrough"
: techrepublic.com/blog/software-engineer/…