Hướng dẫn should i use html entities? - tôi có nên sử dụng các thực thể html không?

Dựa trên những bình luận tôi đã nhận được, tôi đã xem xét điều này thêm một chút. Có vẻ như hiện tại thực tế tốt nhất là từ bỏ bằng cách sử dụng các thực thể HTML và sử dụng ký tự UTF-8 thực tế. Những lý do được liệt kê như sau:the best practice is to forgo using HTML entities and use the actual UTF-8 character instead. The reasons listed are as follows:

  1. Mã hóa UTF-8 dễ đọc và chỉnh sửa cho những người hiểu nhân vật có nghĩa là gì và biết cách gõ nó.
  2. Mã hóa UTF-8 cũng không thể hiểu được như mã hóa thực thể HTML cho những người không hiểu chúng, nhưng chúng có lợi thế là biểu hiện là ký tự đặc biệt thay vì khó hiểu mã hóa thập phân hoặc hex.

Miễn là mã hóa trang của bạn được đặt đúng thành UTF-8, bạn nên sử dụng ký tự thực tế thay vì một thực thể HTML. Tôi đã đọc một số tài liệu về chủ đề này, nhưng hữu ích nhất là:

  • UTF-8: Bí mật mã hóa nhân vật
  • Wikipedia Nhân vật đặc biệt giúp đỡ

Từ UTF-8: Bí mật của bài viết mã hóa nhân vật:

Wikipedia là một nghiên cứu trường hợp tuyệt vời cho một ứng dụng ban đầu được sử dụng ISO-8859-1 nhưng đã chuyển sang UTF-8 khi nó trở nên quá cồng kềnh để hỗ trợ nước ngoài. Bots bây giờ sẽ thực sự đi qua các bài viết và chuyển đổi các thực thể nhân vật thành các nhân vật thực tương ứng của chúng vì mục đích thân thiện với người dùng và khả năng tìm kiếm.Bots will now actually go through articles and convert character entities to their corresponding real characters for the sake of user-friendliness and searchability.

Bài viết đó cũng đưa ra một ví dụ tốt đẹp liên quan đến mã hóa Trung Quốc. Dưới đây là ví dụ viết tắt vì lợi ích của sự lười biếng:

UTF-8:

這兩個字是甚麼意思

Các thực thể HTML::

這兩個字是甚麼意思

Mã hóa thực thể UTF-8 và HTML đều vô nghĩa đối với tôi, nhưng ít nhất mã hóa UTF-8 có thể nhận ra là ngoại ngữ và nó sẽ hiển thị đúng trong hộp chỉnh sửa. Bài viết tiếp tục nói như sau về phiên bản được mã hóa thực thể HTML:at least the UTF-8 encoding is recognizable as a foreign language, and it will render properly in an edit box. The article goes on to say the following about the HTML entity-encoded version:

Vô cùng bất tiện cho những người trong chúng ta thực sự biết những thực thể nhân vật là gì, hoàn toàn không thể hiểu được đối với những người dùng nghèo không! Ngay cả các thực thể nhân vật "dễ hiểu" hơn một chút như người dùng như & theta; Sẽ khiến người dùng không quan tâm đến việc học HTML gãi đầu. Mặt khác, nếu họ nhìn thấy θ trong hộp chỉnh sửa, họ sẽ biết rằng đó là một nhân vật đặc biệt và đối xử với nó cho phù hợp, ngay cả khi họ không biết cách tự viết nhân vật đó.

Như những người khác đã lưu ý, bạn vẫn phải sử dụng các thực thể HTML cho các ký tự XML dành riêng [ampersand, ít hơn, lớn hơn].

Đây có phải là một thực tế tồi tệ để sử dụng & nbsp; Thay vì 'không gian thông thường' [tôi biết cả hai đều khác nhau], nếu có thì tại sao ?, Và cũng có thể sử dụng & amp; Thay vì '&' [hoặc bất kỳ mã thực thể HTML nào] trong khi tạo tài liệu HTML?

Bạn đang cố gắng làm gì? Tôi muốn phân phối các tài liệu HTML dưới dạng lưu trữ zip, GIT hoặc bất kỳ điều khiển phiên bản nào khác, không biết chúng sẽ được định dạng lại và lưu với mã hóa văn bản tối nghĩa như thế nào.
I want to distribute html docs as a zip archive, git or any other version control, not knowing how they would be reformatted and saved with obscure text encoding.

Bạn đã đi được bao xa? Đôi khi & các ký tự khác [ví dụ] chuyển sang vô nghĩa [hoặc không thể đọc được e.x.] khi được lưu bằng mã hóa văn bản tối nghĩa [ví dụ: ANSI hoặc bất kỳ bất kỳ nào khác với phạm vi char giới hạn].
Sometimes the & and other characters [e.x. Ø] turn to gibberish [or unreadable e.x. �] when saved with obscure text encoding [e.x. ANSI or any other with limited char range].

Bạn bị mắc kẹt điều gì? Tôi không biết đó có phải là một thực hành xấu hay không, lý do duy nhất của tôi là phục vụ cho "mã hóa văn bản tối nghĩa", mã của tôi đã được xem xét [nhiều lần] và đây là điểm được nêu ra [ Thực hành xấu để sử dụng & nbsp; hoặc mã thực thể HTML khác], cần xác nhận nếu điểm đó là hợp lệ.
I don't know if it is a bad practice or not, my only reason is to cater for "obscure text encoding", My code was reviewed [multiple times] and this was the point that was raised [bad practice to use   or other HTML Entity Codes], need to confirm if the point was valid.

Bạn đã thử gì? Tôi đã làm nó theo cách này trong một thời gian dài, nó đã trở thành một thói quen [không chắc nó là tốt hay xấu]. Cần ý kiến ​​chuyên gia về điều này. Hoặc có thể là một hướng dẫn khi sử dụng mã thực thể.
I've done it this way for a long time, it has become a habit [not sure if it is good or bad]. Need expert opinion on this. Or may be a guide when to use Entity Codes.

Cảm ơn

I wouldn't replace with an entity unless it invalidates the HTML. Entities look ugly and are difficult to read. The simplest and best teacher for what is and is not requiring an HTML entity is an HTML validator. The most trustworthy validator is at: //validator.w3.org/ Not all entities are needed to make valid HTML. For example, " most-often isn't needed. It makes the HTML look more cryptic to developers, adds more bytes to the download size, and doesn't make the HTML any more valid. It is bad in every way. The validator will ensure that those special characters don't introduce any character encoding issues or other HTML validity problems. Trust the validator more than what any person says including myself. I'm fairly confident with a few pointers, though. Out of the specific characters you mentioned, exclamation marks, regular quotation marks, and regular hyphens shouldn't require entities. There are some similar but more special characters that require entities. There are directed quotes[right and left], left and right single quote/apostrophe, a long dash or hyphen[longer than the regular hyphen] that probably need entities but the validator should point this out. An ampersand should always be an entity like & in HTML. < and > signs in text nodes must be replaced with entities like < and > too. There are different rules for when < and > are used in JavaScript and CSS, though. Also note that URL formats need to be encoded differently than text nodes. Regular double quotes wrap an attribute's value so a quote within it needs to be escaped like \".

Tại sao đôi khi chúng ta cần sử dụng các thực thể HTML?

Các thực thể thường được sử dụng để hiển thị các ký tự dành riêng [nếu không sẽ được hiểu là mã HTML] và các ký tự vô hình [như không gian không phá vỡ].Bạn cũng có thể sử dụng chúng thay cho các ký tự khác khó gõ bằng bàn phím tiêu chuẩn.to display reserved characters [which would otherwise be interpreted as HTML code], and invisible characters [like non-breaking spaces]. You can also use them in place of other characters that are difficult to type with a standard keyboard.

Thực thể nhân vật phổ biến nhất trong HTML là gì?

Thực thể nhân vật phổ biến nhất trong HTML là không gian không phá vỡ.Thông thường HTML sẽ cắt ngắn các không gian trong văn bản của bạn.Nếu bạn viết 10 khoảng trống trong văn bản HTML của bạn sẽ xóa 9 trong số chúng.Để thêm không gian vào văn bản của bạn, hãy sử dụng thực thể ký tự.non-breaking space. Normally HTML will truncate spaces in your text. If you write 10 spaces in your text HTML will remove 9 of them. To add spaces to your text, use the character entity.

Thực thể HTML & NBSP đại diện cho điều gì?

& NBSP thực sự là một trong những thực thể HTML được sử dụng thường xuyên nhất.NBSP là viết tắt của không gian không phá vỡ, có nghĩa là các chuỗi được phân tách với thực thể này sẽ không được tách ra và đặt thành các dòng riêng biệt.

Bài Viết Liên Quan

Chủ Đề