Apakah spasi dalam "href" valid?

9

Apakah <a href=" #id ">(ruang catatan) benar (X) HTML?

Apakah artinya sama dengan <a href="#id">?

porton
sumber
1
Dalam HTML itu pasti akan memvalidasi dan saya percaya mereka setara. Agen-pengguna harus menghapus spasi putih terkemuka dan tambahan. Referensi: w3.org/TR/2014/REC-html5-20141028/...
MrWhite

Jawaban:

7

Dalam (X) HTML5, aunsur ‘s hrefatribut

[...] harus memiliki nilai yang merupakan URL valid yang berpotensi dikelilingi oleh spasi .

Seperti yang disarankan jangkar, mungkin berisi ruang depan dan belakang .

Bagian tertaut memperjelas bahwa ruang-ruang ini akan dilucuti :

[...] agen pengguna harus menghapus semua karakter spasi yang ada di awal atau akhir string [...]


Jika URL aktual dimulai / diakhiri dengan (atau mengandung) spasi, Anda harus menyandikannya dengan persen %20.

Elemen-elemen ini memiliki nilai URL yang berbeda:

<a href=" foo"></a> <!-- the URL is <foo> -->
<a href="%20foo"></a> <!-- the URL is < foo>, i.e., <%20foo> -->

Elemen-elemen ini memiliki nilai URL yang sama:

<a href="%20foo"></a>
<a href="%20foo "></a>
<a href="%20foo   "></a>
<a href=" %20foo"></a>
<a href="    %20foo"></a>
<a href="    %20foo    "></a>
unor
sumber
0

Mengapa kamu melakukan ini? Siapa yang menulis kode seperti itu? Itu ruang yang tidak perlu di antara "".

Spasi literal tidak diizinkan dalam URL dan itu bukan bagian dari data. hanya memformat untuk konsumsi manusia.

Anda harus menghapus spasi putih. Beberapa browser menjadikannya sebagai spasi.

Spasi valid. Dan mereka berdua berbeda karena, satu memiliki ruang, yang lain tidak. Itu artinya, pemformatan atau tautan itu berbeda.

Josip Ivic
sumber
0

Ya, itu akan dikoreksi secara otomatis oleh browser, lagi pula jika menggunakan spasi Anda mendapatkan kesalahan Anda dapat menulisnya dengan cara lain:

URL, jadi href, mendukung spasi, cukup ganti dengan "% 20" Lagi pula jika Anda menulis

<a href="%20#id"> </a>

Ini akan menghasilkan "#id" dan bukan "#id"

Misalnya:

<a href="?How%20Are%20You">How are you?</a>
HAlex
sumber
-1

Anda dapat menjalankan markup Anda sendiri melalui validator untuk mengetahui apakah apa yang Anda tulis valid. Tapi markup yang valid tidak selalu merupakan indikasi transportasi yang valid dan spasi harus URL disandikan (dan tanda pagar juga).

Anda dapat mempelajari lebih lanjut dengan mencari di Stackoverflow. Secara khusus, ini jawaban SO . Karakter Anda tidak aman untuk digunakan.

rampok
sumber