Separați setarea TinyMCE în mai mulți pași. De obicei, trebuie să faceți următoarele:
Există o opinie că setarea formatării textului pentru cea mai populară temă avansată apare în fișierul /themes/advanced/skins/default/content.css. Nu e așa. De fapt, TinyMCE nu face apeluri la acest fișier fără configurație suplimentară.
Pentru a particulariza aspectul textului în zona de editare TinyMCE, procedați în felul următor:
1. Copiați fișierul /themes/advanced/skins/default/content.css în directorul unde se află css-ul sau CMS-ul site-ului. De obicei folosesc directorul / css (relativ la root-ul site-ului).
2. Redenumiți fișierul copiat din /css/content.css în /css/tinymce.css, deoarece după un timp puteți uita de unde a venit fișierul și ce se numește "content.css".
3. În setările TinyMCE (adică în matricea de configurare tinyMCE.init), adăugați opțiunea:
4. Trebuie să vă asigurați că acest fișier afectează TinyMCE. Pentru a face acest lucru, în prima linie, înlocuiți dimensiunea fontului de dimensiune font de la 10px la 12px. Aici:
Această setare are sens și se lasă, deoarece dimensiunea de 10px este considerată prea mică.
5. Actualizăm pagina. Pentru a vedea modificările în design, în unele browsere, în special Opera, trebuie să ștergeți memoria cache pentru a reporni fișierul css.
Mulți oameni încearcă să rezolve această problemă atribuind următoarele setări matricei de reglaj tinyMCE.init:
Nu este necesar să faceți asta! În primul rând, TinyMCE este buggy atunci când lucrează cu șiruri separate de o etichetă
. Dezvoltatorii de TinyMCE știu despre acest lucru, dar ei nu vorbește direct, dar ei nu recomandă utilizarea acestui set. În al doilea rând, sarcina noastră este complet diferită - trebuie să facem distanța între rânduri și intervalul dintre paragrafe egal. Apoi, utilizatorul va fi confortabil să lucreze cu.
Prin urmare, în fișierul creat /css/tinymce.css trebuie să adăugăm o linie:
Cu această linie, noul paragraf nu va fi separat de o liniuță mare, dar va arăta ca o linie nouă.
Acum trebuie să vă asigurați că textul creat în TinyMCE este afișat pe paginile site-ului în forma în care este vizibil în zona de editare a TinyMCE.
Dacă doar conectăm fișierul /css/tinymce.css la codul paginii site-ului, atunci nimic bun nu va veni din ea. Și nu va funcționa deoarece regulile scrise în /css/tinymce.css sunt scrise în "formă explicită" pentru toate etichetele principale. Astfel, pur și simplu conectarea /css/tinymce.css la codul paginii HTML a paginii site-ului poate interfera cu aspectul paginii.
Pentru mult timp am înțeles cum puteți conecta regulile CSS utilizate în TinyMCE astfel încât acestea să afecteze numai o anumită zonă a codului HTML (adică în regiunea în care se află textul creat cu TinyMCE). Ca urmare, a apărut o singură metodă. Un pic inconfortabil, dar de lucru beton armat.
Trebuie să facem următoarele:
1. Copiați fișierul /css/tinymce.css, dându-i numele /css/site_tinymce.css. În acest fișier nou, trebuie să scrieți un șir ".tinymce" înaintea fiecărei reguli CSS. De exemplu, avem fisierul /css/tinymce.css cu continutul:
mceItemTable. mceItemTable td. mceItemTable th. mceItemTable caption. mceItemVisualAid
2. Conectați fișierul /css/site_tinymce.css la codul paginii HTML a site-ului:
3. Zona în care trebuie creat textul creat în TinyMCE este încapsulată într-o etichetă div cu clasa tinymce:
Astfel, am creat un fișier de reguli CSS care se aplică numai elementelor din interiorul etichetei cu clasa "tinymce". Prin urmare, aceste reguli nu vor viola aspectul site-ului. Și pentru ca aceste reguli să fie aplicate textului creat în TinyMCE, inserăm acest text în etichetă
De ce este această abordare incomodă? Da, pentru că acum trebuie să vă amintiți în mod constant că dacă ceva este reconfigurat în fișierul /css/tinymce.css, același lucru trebuie făcut în fișierul /css/site_tinymce.css.
1. Nu puteți utiliza selectori complexi într-un fișier. Selectorii trebuie să fie scrise pentru etichete în formă explicită sau prin simple reguli. Din această cauză, ideea de a scrie linia ".tinymce" înaintea fiecărui selector nu funcționează, iar cadrul
2. Nu puteți folosi alte fișiere CSS în fișier. Liniile din formularul de mai jos:
încalcă lucrarea parserului css încorporat în TinyMCE, iar textul începe să se afișeze complet incorect.
Din cauza acestor limitări, nu văd o altă soluție diferită de ideea de a păstra două fișiere css: una pentru TinyMCE, cea de-a doua pentru paginile site-ului.
Ultimul lucru rămas este să dai seama cum să folosești clasele de design CSS folosite în TinyMCE pe site. Aici a trebuit să ne confruntăm cu aceleași probleme ca și în problema anterioară, dar, din punctul de vedere, soluția sa dovedit a fi destul de simplă.
Deci, avem un fișier CSS, în care sunt folosite regulile de design CSS, folosite pe paginile site-ului. Lăsați fișierul /css/site.css. Să avem, de exemplu, trei astfel de reguli:
font-familie: Verdana, Arial, Helvetica, sans-serif;
Vrem ca TinyMCE să aibă capacitatea de a formata text cu aceste reguli. În exterior ar trebui să arate astfel: în panoul TinyMCE ar trebui să existe o listă drop-down, în care vor fi trei elemente:
Dacă selectați elementul corespunzător, textul trebuie formatat cu regula ".font_big_head", ".font_mini" sau ".font_block_code".
Nu este dificil să se facă o astfel de funcționalitate. În matricea de configurare tinyMCE.init este necesar să adăugați elementul stilselect la orice conducător al butoanelor, de exemplu în theme_advanced_buttons2. Deci, aceasta ar putea arăta astfel:
theme_advanced_buttons2. "fontselect, fontsizeselect, styleselect",
Apoi trebuie să specificați ce listă verticală va afișa elementul stilselect. Pentru aceasta, adăugați următoarea opțiune la matricea de configurare tinyMCE.init:
Cu toate acestea, în ciuda codului HTML corect generat, nu vom vedea utilizarea acestui format în fereastra de editare TinyMCE. De ce? Da, deoarece fișierul CSS /css/site.css cu regulile noastre nu este cunoscut de TinyMCE.
Deci, trebuie să conectăm două fișiere TinyMCE - /css/tinymce.css și /css/site.css. Cu toate acestea, examinând documentația, vedem că utilizând opțiunea content_css pentru a vă conecta, puteți avea un singur fișier CSS. În plus, după cum am explicat deja, nu este posibil să conectați un fișier CSS în alt fișier CSS.
Am încercat chiar să înregistrez în matrice tinyMCE.init două opțiuni content_css:
dar cum era de așteptat, nu a dus la nimic bun - doar primul fișier este citit.
Din nou am trebuit să urc în codul sursă al TinyMCE și ce am văzut acolo? Se pare că abilitatea de a adăuga mai multe fișiere css este, dar acest lucru nu este scris în documentație. Trebuie doar să listați fișierele incluse, separându-le numele cu un spațiu / virgule. Aici:
content_css: "/css/tinymce.css, /css/site.css",
Un punct important trebuie făcut imediat.
Amintiți-vă că am adăugat regula "p, span
font-familie: Verdana, Arial, Helvetica, sans-serif;