[TYPO3-german] Ich möchte eine Tabelle im Internet Explorer im RTE zentrieren...
Christopher
Chrissitopher at gmx.de
Thu Feb 28 17:33:27 CET 2008
Hi Christian!
Vielen Dank, damit geht es!
Man braucht genau folgenden Code im Stylesheet für den RTE:
=================
/* Star html-Hack um dem IE zusätzliche Eigenschaften mitzugeben:
Tabellen sollen im Internet-Explorer zentriert angezeigt werden.
Nähere Infos: http://msdn2.microsoft.com/en-us/library/ms537634.aspx */
* html .htmlarea-content-body table {
position:relative;
top:0;
left: expression( (this.parentNode.offsetWidth/2) - (this.offsetWidth/2) );
}
=================
Die Tabelle wird mittig angezeigt.
Das klappt aber nur solange man nicht den Quellcode anzeigt,
denn danach wird die Angabe unter <table style="left:xxxxpx;"> nicht mehr
durchgängig aktualisiert.
Um das Problem zu vermeiden, darf der Wert nicht mitgespeichert werden.
Das wird erreicht indem man den Style-Tag für Tabellen nicht zulässt.
Das geht mit der folgenden Zeile im TSConfig-Feld der Root-Seite:
RTE.default.proc.entryHTMLparser_db.tags.table.allowedAttribs = class
Christopher
PS: Wenn du nichts dagegen hast, teile ich diese Lösung auch dem Entwickler
im bugtracker mit; vll. hilft es, dass er sowas in sein Standard-Stylesheet
einbaut. ;)
"Christian Wolff" <Chris at connye.com> schrieb im Newsbeitrag
news:mailman.1.1204135428.5421.typo3-german at lists.netfielders.de...
> Hallo Christoper,
> also die Dynamic Propertys wie sie microsoft nennt.
> http://msdn2.microsoft.com/en-us/library/ms537634.aspx
>
> du must in deine RTE style sheet eine zusätzliche left property für den IE
> setzten.
>
> z.b so:
>
> /* Styles für alle browser*/
> .htmlarea-content-body {
> border: solid 1px red;
> width:500px;
> text-align:left;
> }
> .htmlarea-content-body table {
> border: solid 1px green;
> margin: 0 auto;
> }
> /* star html Hack um dem IE zusätliche eigendschaften mitzugeben */
> * html .htmlarea-content-body table{
> position:relative;
> top:0;
> left: expression( (this.parentNode.offsetWidth/2) -
> this.offsetWidth/2) );*/
> }
>
> zum FE hin kannst du entweder den gleichen hack verwenden, expressions
> brauchen aber
> javascript und sind nicht besonders schnell... da sie zu verschidenen
> aktionen immer wieder
> vom IE ausgewertet werden. deswegne würde ich fürs FE
> einen zusätlichen wrap um die tabellen veruschen einzubauen.
>
> gruss chris
>
>
>
> On Wed, 27 Feb 2008 18:29:07 +0100, Christopher <Chrissitopher at gmx.de>
> wrote:
>
>> Hi Chris,
>>
>> von der Logik her kann ich deine Codezeile nochvollziehen.
>>
>> Aber wo muss ich das hinschreiben und wie, damit der IE das versteht?
>>
>> Nochmal zum Frontend: Dort _sind_ die Tabellen zentriert mit dem
>> Stylesheet,
>> das ich verwende. Ohne irgendwas drumrum. Aber das läuft im RTE ime IE ja
>> nicht so...
>>
>> Christopher
>>
>>
>> "Christian Wolff" <Chris at connye.com> schrieb im Newsbeitrag
>> news:mailman.1.1204110241.19658.typo3-german at lists.netfielders.de...
>>> On Wed, 27 Feb 2008 11:54:02 +0100, Christopher <Chrissitopher at gmx.de>
>>> wrote:
>>>
>>>> Hi Christian,
>>>>
>>>> ich hab mir die CSS-Expressions bei Google mal angeschaut, aber ich hab
>>>> leider nicht die richtige Idee, wie mir das helfen können soll....
>>>>
>>>> Der RTE wrappt die Tabelle ja "in etwas", nur ist das der Tag mit der
>>>> Klasse
>>>> ".htmlarea-content-body". Dieser umgibt das komplette Content-Element,
>>>> das
>>>> man editiert.
>>>> Nur sollte hier die Schrift halt nicht zentriert, sondern als Blocksatz
>>>> stehen (siehe mein css).
>>>>
>>>> Wahrscheinlich wäre es echt am einfachsten, wenn der RTE _nur für das
>>>> Editierfenster im BE_ Tabellen in einen div-Container einschließen
>>>> würde...
>>>> Wobei: Keine Ahnung, was das dann für Nebenwirkungen hätte...
>>>>
>>>> Christopher
>>>
>>> Hallo Christopher
>>> ich weiss nur nicht ob man das mit dem zusätzlichen div.
>>> um die tabelle dem RTE beibringen kann.
>>>
>>> mit den CSS expressions müstest du ungefähr folgendes formulieren:
>>>
>>> tabellen haben padding-left = (.htmlarea-content-body
>>> breite/2)-(tabellen
>>> breite/2)
>>>
>>> das ist jetzt natürlich keine echte expression sondern eine pseudo-code
>>> expression.
>>>
>>> aber das so eine expression könnte der IE verstehen. und es würde für
>>> den
>>> redakteur den anschein haben.
>>> das die tabelle "zentriert" ist.
>>>
>>> fürs frontend könntest du dann die tabellen einfach noch mal wrappen
>>> lassen. oder ebenfalls eine
>>> Expression mitgeben für den IE.
>>>
>>> gruss chris
>>>
>>> --
>>> Christian Wolff // Berlin
>>> http://www.connye.com
>>>
>>> Latest Projects:
>>> http://www.flycall.de | http://www.atr24.de | http://www.titanic.de
>>
>>
>
>
>
> --
> Christian Wolff // Berlin
> http://www.connye.com
>
> Latest Projects:
> http://www.flycall.de | http://www.atr24.de | http://www.titanic.de
More information about the TYPO3-german
mailing list