Selektor súrodencov a pseudoelement :first-letter
Na mojom blogu som si už dávno urobil jednu somarinku na zvýraznenie prvého písmena na začiatku článku.
Hneď, ako som to urobil som si všimol, že vo Firefoxe sa zväčšuje aj prvé písmeno v odkaze RSS, komentáre k tomuto článku.
Na tom by nebolo nič zlé, lebo aj toto písmeno zodpovedá danej definícii štýlov a malo by byť zobrazené väčšie, ale ono sa pri prejdení myškou ponad text odkazu zmenší a zostane zmenšené. V prehliadači Opera sa to prvé písmeno nezmenšuje, čo považujem ja za správne.
Definícia problémového štýlu
h2+p:first-letter {
font-size: 1.2em;
font-weight: bold;
padding: 0 1px;
}
Používam selektor súrodencov h2+p čo znamená, že sa bude aplikovať dané pravidlo len na prvok p ktorý nasleduje hneď po nadpise h2.
Pseudoelement :first-letter je na zvýraznenie prvého písmena.
Ak je na stránke viac takýchto možností uplatniť danú definíciu štýlov, tak všetko funguje tak ako má. Jediný problém je pri texte, ktorý je zároveň odkazom a uplatňuje sa pri ňom pseudotrieda :hover. Skúšal som nájsť nejaké riešenie, ako donútiť Firefox nechať prvé písmeno veľké, ale na nič rozumné som neprišiel.
Ak by niekto vedel, ako by sa dala táto skutočnosť eliminovať rád sa nechám poučiť v komentároch.
Pre tých, čo ich to zaujíma sa viac o tejto problematike dočítajú v článku na interval.cz.
Páči sa vám tento článok, zalinkujte ho:
««« Predchádzajúci text: Nová žena v mojom živote Následujúcí text: Čo dokážu ľudia hľadať a ako som trhol Hulána »»»
Verzia pre tlač | 4 komentáre | 322x
Komentáre k textu
Rss komentářů tohoto textu - Formulár pre nový komentár
Dosť zaujímavý problém, s ktorým som ešte nemal tú česť stretnúť sa.
Skúsil by som možno:
<a href="URL" title="popis"><span class="prve-pismeno">O</span>dkaz</a>
a potom:
a span.prve-pismeno:first-letter
{
..vlastnosti..
}
[1] pjotr : No a to je presne to, čo som nechcel urobiť.
Text generuje TEXY v RS2 a síce by sa dalo urobiť aby to generoval trochu odlišne, ale ja som chcel skôr nájsť problém, prečo to tak je a ako to opraviť.
Nemám rád vytváranie zbytočných HTML prvkov k dosiahnutiu toho čo sa dá urobiť len pomocou CSS.
Je pravda, že riešenie obalenia do span by fungovalo aj v IE, ale na to ja kašlem to sú len dekoračné vlasnosti.
Možno by som sa nad tým až tak nezamýšľal. Pretože mojou „filozofiou“ je asi toto: „používaním prehliadača IE sa užívateľ vedome (nevedomosť neospravedlňuje) dopúšťa toho, že nemusí všetko vidieť správne (nemyslím zle)“.
Takže príchodom IE 7 tento problém asi nebudeš mať. Ak je to len veľké a malé písmeno, tak by som sa možno na to z vysoka.. pozrel.
A vieš čo, tak pre IE zvlášť urob to, aby tam nebolo :first-letter a bude
.
[3] pjotr : Peťo s tvojho komentára usudzujem, že si trochu nepochopil, kde je môj problém.
Mne nejde o to ako sa to zobrazuje v IE, lebo IE :first-letter vôbec nepodporuje.
Ja som zistil, že firefox zvláštne používa tento pseudoelement, ak je prvé písmeno v texte, ktorý je zároveň odkazom.
