Styling Microsoft-Word-Generierten HTML -
Pfui. Wort ist berüchtigt für seine aufgebläht, unübersichtlich, nicht-Standard-konformen, nicht-semantisches HTML. Ich habe leider ein professor, dass wir einen überblick generieren, um sehr hohe standards. Ich möchte lieber nicht von hand schreiben, so dass ich beschlossen, etwas zu machen, das wäre nützlich für meine Klassenkameraden auch. Ich habe die Umrisse mit einer einfachen nummerierten Liste in NeoOffice auf meinem Mac, exportiert Sie als HTML -, und schrieb einiges von CSS-Formatvorlagen. Dann hab ich jemand zum erstellen einer sortierten Liste in Word für Windows exportieren Sie es als html -, und es mir zu schicken, um die Kompatibilität zu überprüfen. Nach dem scrollen Meilen hinunter die Seite, versuchte, ein schaudern zu unterdrücken, sah ich ein problem. Wort nicht verwenden <ol>
und <li>
. Es verwendet die Berge von verschachtelten <span>
s mit Klassen die Wazoo. Ich hasse es zu sehen, alle meine Arbeit zu verschwenden, aber dieser Inhalt ist unmöglich, mit zu arbeiten—ich würde den Stil auf ein Dokument-zu-Dokument-basis, anstatt mit einem universal-stylesheet.
Idealerweise Wort wäre HTML mit standard-tags, so dass ich könnte es Stil genau wie jede andere Liste, aber das scheint nicht der Fall zu sein. Wie kann ich es machen das der Erstellung von Listen, die Sie tatsächlich verwenden <ul>
und <li>
eher als <span>
oder zumindest etwas ändern in meinem code irgendwie funktioniert es mit der Art und Weise seltsam, wie es funktioniert Listen erstellen?
- Verwandte: stackoverflow.com/questions/4824619/... Könnte auch helfen: stackoverflow.com/questions/1255738/...
- Es ist nicht völlig klar, für mich immer noch, was genau Sie versuchen zu erreichen.
- Siehe die letzten Zeilen. Ich habe klargestellt.
- Es ist noch überhaupt nicht klar ist mir, warum bist du mit Word, sondern ein tool, das generiert standard-HTML, ob der HTML-standard ist das, was Sie wollen, aber ob das wirklich eine Anforderung, dies scheint wie eine bessere Frage für den SuperUser.
- Walker, es ist nicht klar, warum Sie benötigen, um mit Word oder erstellen Sie eine Liste der Elemente. Sagen Sie Ihrem professor hat ausdrücklich gesagt, Sie müssen verwenden Sie Word, und einer Liste? Wenn nicht, bitte im klaren sein, was Euch verlangt wird.
- Ich würde lieben nichts besser als zu schreiben einfach gute alte HTML, aber ich bin versucht zu machen, ein mehr-oder-weniger drag-und-drop-system für nicht-technische Anwender. Sie fühlen sich wohl in nichts anderes als Word, so dass ich wollte, dass die Liste generator und haben diese dann öffnen Sie es in Editor, und fügen Sie die CSS zwischen den style-tags. Ich nehme an, dass es technisch nicht zu schwer, nur Unentschieden in einem WYSIWYG-editor wie der generator statt und stellen Sie sich der trade-off Sie nicht haben, um zu sehen, die CSS, aber gezwungen zu sein, verwenden Sie ein Programm auf das internet Keuchen zu erstellen, die auf der ursprünglichen Liste.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Jungs, die schrieb Winword und deren HTML-generation sind intelligente Jungs. Wenn es war einfach zu bedienen HTML-Funktionen in einem puristischen Art, wie Sie es getan hätten.
Wort ist über das erstellen von Papier-optimierten layouts. es unterstützt Konzepte wie tab-stops und multi-level-Nummerierung, die HTML nicht unterstützen, oder gerade erst. Als ein Ergebnis, eine HTML-version eines Word-Dokument ist nicht 'schön' HTML, sondern der Versuch, behalten die Eigenschaften des Word-Dokuments genau.
Wenn Word wieder öffnet sich eine HTML-Datei, die es gespeichert hat, es hat einige clevere reverse-engineering auf das Dokument, so dass macht in Word sah ziemlich so aus, wie es begonnen hat. Ebenso, wenn Sie fügen Sie den HTML-als ein Ausschnitt, in eine web-Seite, die Beibehaltung Wort CSS, die Ergebnisse sind ziemlich treu. In diesem Fall gibt es ein Kultur-clash zwischen den zugrunde liegenden CSS der Webseite und Word-CSS, und einige Anstrengung erforderlich ist, um das beste aus einer schlechten job. Das Word-HTML nicht verwenden UTF-8, was braucht der Handhabung.
HTMLTidy kann verwendet werden, um rip-aus Word mark-up, aber ein wenig mehr massieren wird erforderlich, nachdem diese für ein gutes rendering innerhalb einer Webseite. Habe ich ein Produkt für 15 Jahre, die nicht diese Vermischung von Wort-und-web-Seiten, und die Ergebnisse können ganz gut, wenn Sie die Feinabstimmung des CSS.
Wir verwendeten Wort, denn wir schaffen Papier-Versionen, und importieren von text aus den berichten in Word, nicht, weil wir nicht finden konnten, einen dedizierten HTML-editor.
Ich würde nicht empfehlen die Verwendung von Word zum erstellen ordentlich puristischen HTML. Sie würden nicht mit einem can-opener zum öffnen einer Flasche Wein, würden Sie?
Leben wäre viel einfacher, wenn:
a) Microsoft re-engineered die unzähligen Optionen, die auf seine höchst verwirrend 'bullets number' - Funktion,
b) HTML, native, und richtig featured, multi-level-Nummerierung-Unterstützung, statt der nach-gedacht Ansätze, die derzeit verfügbar sind. Die Schwäche von HTML in diesem Gebiet gesehen werden können, in der fadenscheinigen Nummerierung Optionen, die in Google Docs.
So viel verbessert hat, die mit HTML 5, vielleicht können wir hoffen, dass HTML 6 wird helfen, die Brücke der Textverarbeitung /HTML-editor zu teilen.
Diese Ressource verwenden http://word2cleanhtml.com/ konvertieren von Word-Dokumenten in sauberen HTML-Code. Sehr nützlich, meiner Meinung nach.
Wenn Sie bekommen können Ihre Hände auf einem Windows-PC, Notepad++ (http://notepad-plus-plus.org/), um den code einzufügen, und wählen Sie dann das plugin zu formatieren Sie den code.
Verwenden Sie einen WYSIWYG-editor als Liste-generator. Dies würde die Beseitigung der Notwendigkeit für die Nutzer zu viel mit raw-CSS, die auf Kosten der Einnahme von Ihnen aus der Komfort-zone von Microsoft Word.
Kreative Nutzung von Word Suchen und Ersetzen kann auch arbeiten. Zum Beispiel, öffnen Sie die HTML-Datei mit dem Editor, kopieren und einfügen, den text zurück in ein Word-Dokument. Öffnen, Suchen und Ersetzen. Wenn das HTML sieht so aus (zum Beispiel), mit "Dies ist die erste Zeile der text" als erste Zeile ein:
Dann suchen und ersetzen mit Platzhaltern für
\<p*line-height:115%'\
und ersetzen mit nichts. Es kann eine Reihe von Funden/Ersetzt. Das HTML-markup ist reichlich, aber alles andere gleich sind, ist es konsequent mindestens.Wenn du hast dreamweaver praktisch, es ist eine Magie, die "clean up word HTML" - button, der Wunder tut in diesem Szenario.
MSWord ist nur so schlau wie der Autor - eine geordnete Liste ist coverted als solche in HTML nur, wenn es erstellt wurde, in MSWord als solche. Dies bedeutet, dass eine Liste formatiert sein muss als solche pro MSWord-Konstrukte und nicht, wie es auf der Seite angezeigt. Viele Menschen erstellen Listen, die "erscheinen" bestellt werden oder undordered mit tabs und andere formatieren und nicht mit MSWord Funktionen der Liste. Speichern als HTML versucht zu retten, wie es geschrieben wurde, nicht wie es dargestellt wurde.
Tun, einige der Forschung, es scheint, dass der Ansatz der Umwandlung des Dokuments in das HTML ist nicht praktisch. Word ist einfach viel zu variabel in Ihrer Einstellung zu speichern und die HTML-Generierung für ein einzelnes Dokument, nicht zu erwähnen, Unterschiede zwischen verschiedenen Versionen von Word. Ähnlich wie Wyatt ' s Vorschlag, möglicherweise gibt es Möglichkeiten, um den code zu bereinigen, aber keiner von Ihnen sind perfekt. Graben rund um die API kann eine Art und Weise zu analysieren ist dies leichter, aber es kann sich herausstellen, dass dies in der Praxis nur als verworren. Es scheint, dass mit word als Liste-generation-tool ist einfach unrealistisch.
Können Sie eine Verknüpfung mit einem externen stylesheet in ein HTML-Dokument in Arbeit unter der Registerkarte "Entwickler" - > Document Template -> Verbunden mit CSS. Anschließend können Sie diese überschreiben, fast jeder Stil erzeugt, indem Word.
Credit: https://superuser.com/questions/65107/how-to-apply-external-css-stylesheet-to-document-in-microsoft-word/65144#65144
Hinweis: ich habe diese mit Word 2013, aber es ist nicht eine neue Funktion.