2009-07-24 5 views
4

Angenommen, Sie haben ein HTML-Dokument mit geschützten Leerzeichen ( ). Wenn Sie in Internet Explorer 6 - 8 unter Windows XP die fehlerfreien Bereiche auswählen und diese kopieren/einfügen, werden sie als "normale" Leerzeichen (U + 0020) kopiert/eingefügt.Wie funktioniert das Kopieren und Einfügen von nicht brechenden Räumen in verschiedenen Systemen/Browsern?

Kennt jemand Systeme, Browser usw. oder Kombinationen von, die dieses Verhalten nicht aufweisen. Das heißt, die nicht-brechenden Leerzeichen kopieren und/oder einfügen als ein nicht-brechendes Leerzeichen (U + 00A0)?

EDIT: Um ein wenig mehr Kontext zu bieten: Die Anwendung, die ich arbeite, wurde lokalisiert. Ich vermute, dass sich die meisten nord-/südamerikanischen und europäischen Systeme ähnlich verhalten werden. Ich bin etwas besorgt über asiatische Sprachen und Systeme.

Antwort

1

Obwohl mir die Unterschiede zwischen den Browsern im Umgang mit kopierten/eingefügten Texten nicht bekannt sind, würde ich vorschlagen, dass die Zwischenablage des Betriebssystems die Zeichencodierung des Texts einer HTML-Seite interpretiert (Aber nur hier raten).

In beiden Fällen - ich würde vorschlagen, dass Ihre beste Option, um sicherzustellen, dass Ihr kopierter Text korrekt interpretiert wird, wäre das lang Attribut in Ihre Seitenelemente (Ref: W3C Recommendations). Dies würde explizit ein Gebietsschema für ein bestimmtes Element festlegen, wenn dies nicht sofort durch die Deklaration des Inhaltstyps Ihrer Seite in den Metadaten <head> klar war.

Abgesehen davon, dass Ihr HTML semantisch korrekt ist, kann ich nicht sehen, wie Sie sonst regionale Unterschiede unterbringen oder vorhersagen könnten.