3

htmlcompressor.com の作成者によると、意味的な意味があるため、これは実行できません。

以下に具体的な例を示します。

<meta name='description' content='Foo lets you save and share all your 
  web bookmarks / favorites in one place. It is free with no advertising for life, and 
  has straight forward privacy controls.'>

あなたが持っている改行文字を削除します:

<meta name='description' content='Foo lets you save and share all your web bookmarks / favorites in one place. It is free with no advertising for life, and has straight forward privacy controls.'>

これは、ブラウザに送信したい 1 行です。

文字列操作を使用して、すべての HTML に対してこれを実行したいと考えています。これは可能ですか、それとも改行文字が意味を持つ他のケースはありますか? 区別する方法はありますか?

4

2 に答える 2

0

content 属性が CDATA であるという仕様が正しい場合はいつでも、Web マスターは JavaScript を介して、指定された例の「meta」タグの「content」などの属性の値を使用できます。属性の値を圧縮すると、期待される結果が変更されます。 .

したがって、htmlcompressor.com の作成者は、圧縮を目的としたセマンティックな意味を持つという点で正しいです。

<meta id="m1" name="item1" content="Sample stuff:

  1. This text is multiline on purpose.
  2. And the author expects it to remain this way after compression.

  So yes, it does matter...">

圧縮された同じメタ タグ:

<meta id="m2" name="item2" content="Sample stuff: 1. This text is multiline on purpose. 2. And the author expects it to remain this way after compression. So yes, it does matter...">

そして違いを示すために:

<script>
  alert('"'
      + document.getElementById('m1').content
      + '"\n\n---------------\n\n"'
      + document.getElementById('m2').content + '"'
  );
</script>

Afaik、そのサイトの目標は、結果のレイアウトや機能を変更せずにドキュメントを圧縮することです。

実際の例: http://jsfiddle.net/7Qb74/

于 2013-10-29T14:05:39.893 に答える