為了改善您的使用體驗,本網站正在進行維護,部分功能暫時無法使用。若本站的文件無法解決您的問題,想要向社群發問的話,請到 Twitter 上的 @FirefoxSupport 或 Reddit 上的 /r/firefox 發問,我們的社群成員將很快會回覆您的疑問。

搜尋 Mozilla 技術支援網站

防止技術支援詐騙。我們絕對不會要求您撥打電話或發送簡訊,或是提供個人資訊。請用「回報濫用」功能回報可疑的行為。

了解更多

IDENTICAL unordered lists, YET the displays are different.

  • 6 回覆
  • 1 有這個問題
  • 2 次檢視
  • 最近回覆由 cor-el

more options

Latest Firefox This HTML sequence contains two IDENTICAL unordered lists, YET the displays are different. As you can see, the 1st display list is double spaced and the 2nd display list is single spaced. Why?

<!DOCTYPE HTML>
<html>
<head><meta charset="utf-8"></head>
<body>

​<ul>
<li>The Federal.</li>
​<li>The Federal.</li>
​<li>The Federal.</li>
</ul>

---------------------

<ul>
<li>The Federal.</li>
<li>The Federal.</li>
<li>The Federal.</li>
</ul>

</body>
</html>

Displays:

   The Federal.
   ​
   The Federal.
   ​
   The Federal.

   The Federal.
   The Federal.
   The Federal.
Latest Firefox This HTML sequence contains two IDENTICAL unordered lists, YET the displays are different. As you can see, the 1st display list is double spaced and the 2nd display list is single spaced. Why? <pre><nowiki> <!DOCTYPE HTML> <html> <head><meta charset="utf-8"></head> <body> ​<ul> <li>The Federal.</li> ​<li>The Federal.</li> ​<li>The Federal.</li> </ul> --------------------- <ul> <li>The Federal.</li> <li>The Federal.</li> <li>The Federal.</li> </ul> </body> </html> </nowiki></pre><br> Displays: The Federal. ​ The Federal. ​ The Federal. --------------------- The Federal. The Federal. The Federal.

由 cor-el 於 修改

被選擇的解決方法

Those hidden spaces are present as red dots in the screenshot, so you can see that they are right before the <li> tags. I have no idea how/why they ended up in the first UL container as you would normally have to do some effort to get such Unicode characters in a document unless your editor has support. This is the first time I got across such special spaces. You can easily remove them by using cursor left starting with the LI tag until you notice that the cursor doesn't move because it passed the space and press the Delete key or use cursor right and backspace.

從原來的回覆中察看解決方案 👍 1

所有回覆 (6)

more options

The source HTML I provided was interpreted: I meant to display the literal text HTML, so here's the HTML, but commented out so it would not be interpreted.

more options

If you inspect the code closely then you will notice that there are weird &amp#200b; zero-width-space characters present in your code that are rendered on a separate line.

&#0a;
&#200b;
&#3c;&#75;&#6c;&#3e;&#0a;
&#3c;&#6c;&#69;&#3e;&#54;&#68;&#65;&#20;
&#46;&#65;&#64;&#65;&#72;&#61;&#6c;&#2e;
&#3c;&#2f;&#6c;&#69;&#3e;&#0a;
&#200b;
&#3c;&#6c;&#69;&#3e;&#54;&#68;&#65;&#20;
&#46;&#65;&#64;&#65;&#72;&#61;&#6c;&#2e;
&#3c;&#2f;&#6c;&#69;&#3e;&#0a;
&#200b;
&#3c;&#6c;&#69;&#3e;&#54;&#68;&#65;&#20;
&#46;&#65;&#64;&#65;&#72;&#61;&#6c;&#2e;
&#3c;&#2f;&#6c;&#69;&#3e;&#0a;
&#3c;&#2f;&#75;&#6c;&#3e;

由 cor-el 於 修改

more options

Thank you for your response. OK, so the mystery BEGINS. Where did the zero-width-space get inserted? And why only in the 1st sequence and not the 2nd?

Is there a work-around?

BTW, how did you inspect the code to reveal the character encoding?

more options

選擇的解決方法

Those hidden spaces are present as red dots in the screenshot, so you can see that they are right before the <li> tags. I have no idea how/why they ended up in the first UL container as you would normally have to do some effort to get such Unicode characters in a document unless your editor has support. This is the first time I got across such special spaces. You can easily remove them by using cursor left starting with the LI tag until you notice that the cursor doesn't move because it passed the space and press the Delete key or use cursor right and backspace.

more options

Thank you very much for you help. I finally understand what happened, but not why. Following the removal technique you described, I have a way to recognize the problem and work around it. Thanks again.