2010-05-12 13 views
8

siguiendo el consejo en The 6 Most Important CSS Techniques You Need To Know, configuro font-size de mi cuerpo en 62.5%, container de div font-size a 1,4 em (ligera variación del artículo). p.tags y p.publishedfont-size está configurado en 1em.¿Cómo no funciona el tamaño de fuente aquí?

Sin embargo, esto no funciona para mí. Tanto el texto normal como el texto en p.tags y p.published tienen el mismo tamaño (16.8 píxeles calculados por Firebug). ¿Puedes explicar por qué mi código no funciona? Estoy probando en Firefox 3.6.3. El sample page mostrado por el autor funciona bien en el mismo navegador.

He reproducido toda la página a continuación: me disculpo por la longitud de la misma, pero pensé que era mejor no omitir nada.

<html> 
     <head> 
       <title>Title</title> 
       <style type="text/css"> 
         body { 
           font-family: Georgia, "Century Schoolbook", "Times New Roman", Serif; 
           font-size: 62.5%; 
           background-color: #2B3856; /* Dark slate blue */ 
         } 
         h1, h2, h3, h4, h5, h6 { 
           font-family: Verdana, Helvetica, Tahoma, "Sans Serif"; 
           color: #2B3856; 
           margin-top: 2px; 
         } 
         h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { 
           text-decoration: none; 
           color: #2B3856; 
         } 
         h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover { 
           text-decoration: underline; 
         } 
         div#container { 
           width: 800px; 
           font-size: 1.4em; 
           margin: 5px auto; 
           background-color: #E3E4FA; /* Lavender */ 
         } 
         #sidebar { 
           width: 200px; 
           float: right; 
           margin: 0px; 
           padding: 0px; 
         } 
         #sidebar div { 
           padding: 0 5px 5px; 
         } 
         #sidebar div.shadowbox { margin-right: 5px; } 
         #content { 
           width: 600px; 
           float: left; 
           margin: 0px; 
           padding: 0px; 
         } 
         #header { 
           /*background-color: white;*/ 
           background-color: #2B3856; /* #E3E4FA; Lavender */ 
           margin-bottom: 5px; 
           height: 100px; 
         } 
         #header h1 { 
           color: #B93B8F; /* Plum */ 
           line-height: 100px; 
           text-align: center; 
           font-size: 45px; 
         } 
         #description { 
           color: #7D1B7E /* Dark Orchid */ 
         } 
         a { 
           text-decoration: underline; 
           color: #153E7E; 
         } 
         a:hover { 
           text-decoration: none; 
         } 
         div#posts { 
           padding: 0px; 
           font-size: 1.2em; 
           margin: 0px; 
         } 
         div#posts div.post { 
           padding: 5px; 
           margin: 0px 5px 15px 5px; 
         } 
         p.tags, p.published { 
           font-size: 1em; 
         } 
         .shadowbox { 
           background: repeat 0 0 url('http://www.jawsalgorhythmics.com/images/darkness-100x100-10pct.png'); 
         } 
         .justifycenter { text-align: center; } 
         .floatright { float:right; } 
         .floatleft { float: left; } 
         .clearright { clear: right; } 
         .clearleft { clear:left; } 
         .clearboth { clear: both; } 
         .halfsidebarwidth { width: 82px; } 
       </style> 
     </head> 
     <body> 
       <div id="container"> 
         <div id="header"> 
           <h1>Odds 'n Ends</h1> 
         </div> <!-- header --> 

         <div id="sidebar"> 
           <div class="shadowbox"> 
             <br /><p class="justifycenter"><img width="64" height="64" src="{PortraitURL-64}" /></p> 

             <div class="floatleft halfsidebarwidth"><a href="/archive" class="archive">Archives</a></div> 
             <div class="floatleft halfsidebarwidth"><a href="{RSS}" class="rss">RSS</a></div> 
             <div class="clearboth"></div> 
           </div> 
         </div> <!-- sidebar --> 

         <div id="content"> 
           <div id="posts"> 

               <div class="post shadowbox"> 
                   <span class="quote"> 
                     "It does not matter how slow you go so long as you do not stop." 

                     <div class="source">Wisdom of <a href="#" title="http://en.wikipedia.org/wiki/Confucius">Confucius</a></div> 
                   </span> 
                 <p class="tags">Tags: #<a href="#" title="http://demo.tumblr.com/tagged/wisdom">wisdom</a>&nbsp; </p> 

                 <p class="published">Posted: Nov 08, 2006 at 2:27 pm 
                   &nbsp;&nbsp;<a href="#" title="http://demo.tumblr.com/post/236/it-does-not-matter-how-slow-you-go-so-long-as-you">Permalink</a>&nbsp;&nbsp; <a href="#" title="http://tumblr.com/xr06k">Short URL</a></p> 
               </div> 

           </div> <!-- posts --> 
         </div> <!-- content --> 

         <div class="clearboth"></div> 

         <div id="footer" style="text-align: justify;"> 
           <h1>The footer</h1> 
         </div> 
       </div> <!-- container --> 
     </body> 
</html> 
+1

Use esto en lugar de publicar una lista completa de HTML: http://jsfiddle.net/JYfqL/. – Kyle

+2

Eso me parece una "técnica" sin sentido y posiblemente incorrecta. Las afirmaciones tales como "Configurando el tamaño de fuente del cuerpo en 62.5%, que establecerá el tamaño de su fuente en 10 píxeles" son incorrectas y no veo cómo hacer que el diseño web sea más fácil o diferente. Simplemente lleva a los problemas que estás teniendo. – RoToRa

Respuesta

9

Sus <p class="tags"> y <p class="published"> elementos están dentro del div container, que tiene un tamaño de fuente de 1.4em, y también dentro de la posts div, que tiene un tamaño de fuente de 1.2em. Creo que establecer el tamaño de fuente de los párrafos en 1em realmente no hace nada, ya que la unidad em es acumulativa. Entonces, si su tamaño de fuente "raíz" es 62.5%, se incrementará 40% para el primer div, y aumentará otro 20% para el segundo div. Sus dos párrafos también tendrán este tamaño de letra, ya que no aumentan ni disminuyen el tamaño.

Básicamente, si desea que los párrafos "etiquetas" y "publicados" tengan texto más pequeño, proporcióneles un tamaño de menos de uno, p. 0.9em. Esto les dará un tamaño 10% menor que otros elementos en el mismo div principal.

+0

¡Tienes razón, por supuesto! Eso fue realmente estúpido de mí, el tamaño de em es relativo al antecesor (s) -todos ellos !!! Entonces, por supuesto, el efecto es acumulativo. Gracias! – markvgti

1

Graham tenía razón, me puse;

p.tags, p.published { 
    font-size: 0.5em; 
} 

Y eso cambió el tamaño de la fuente. Updated Jsfiddle her e.

El EM se calcula a partir del tamaño base de la fuente del cuerpo. Look here para obtener una explicación sobre cómo funciona :)

+0

Gracias por el enlace del artículo. – markvgti

+0

No hay problema :) Espero que ayude. – Kyle

Cuestiones relacionadas