Processing math: 100%

Herramientas de usuario

Herramientas del sitio


clase:daw:diw:2eval:tema06

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
clase:daw:diw:2eval:tema06 [2025/01/02 19:05]
admin [Unidades]
clase:daw:diw:2eval:tema06 [2025/02/16 22:18] (actual)
admin [Cálculos en CSS]
Línea 94: Línea 94:
 ^ Tamaño botón  ^  Tamaño de fuente  ^  Padding horizontal  ^  Padding vertical  ^ ^ Tamaño botón  ^  Tamaño de fuente  ^  Padding horizontal  ^  Padding vertical  ^
 | Normal  |  ''1rem''  |  ''0.75rem''  |  ''0.375rem''  | | Normal  |  ''1rem''  |  ''0.75rem''  |  ''0.375rem''  |
-| Grande  |  ''1.25rem''  |  ''1rem''  |  ''0.5rem'' +| Grande ''btn-lg'' |  ''1.25rem''  |  ''1rem''  |  ''0.5rem'' 
-| Pequeño  |  ''0.875rem''  |  ''0.5rem''  |  ''0.25rem''  |+| Pequeño ''btn-sm''   ''0.875rem''  |  ''0.5rem''  |  ''0.25rem''  |
  
 Vamos ahora los mismo datos pero en ''px'' suponiendo que el tamaño de fuente es ''16px''. Vamos ahora los mismo datos pero en ''px'' suponiendo que el tamaño de fuente es ''16px''.
Línea 101: Línea 101:
 ^ Tamaño botón  ^  Tamaño de fuente  ^  Padding horizontal  ^  Padding vertical  ^ ^ Tamaño botón  ^  Tamaño de fuente  ^  Padding horizontal  ^  Padding vertical  ^
 | Normal  |  ''16px''  |  ''12px''  |  ''6px''  | | Normal  |  ''16px''  |  ''12px''  |  ''6px''  |
-| Grande  |  ''20px''  |  ''16px''  |  ''8px'' +| Grande ''btn-lg''   ''20px''  |  ''16px''  |  ''8px'' 
-| Pequeño  |  ''14px''  |  ''8px''  |  ''4px''  |+| Pequeño ''btn-sm''   ''14px''  |  ''8px''  |  ''4px''  |
  
-Y por último veamos la relación que hay entre en padding y el tamaño de fuente padding/tamañofuente+Y por último veamos la relación que hay entre en padding y el tamaño de fuente en %
  
-^ Tamaño botón  ^  $\frac{Padding \; horizontal}{Tamaño \de \; fuente}$  ^  $\frac{Padding \; vertical}{Tamaño \de \; fuente}$  ^ +^ Tamaño botón  ^  Padding horizontal respecto \\ del tamaño de fuente   ^  Padding vertical respecto \\ del tamaño de fuente 
-| Normal  |  ''0.75''  |  ''0.375''  | +| Normal  |  75 |  37,5%  | 
-| Grande  |  ''0.8''  |  ''0.4''  | +| Grande ''btn-lg''  |  80%  |  40%  | 
-| Pequeño  |  ''0.57142''  |  ''0.28571''  |+| Pequeño ''btn-sm''  |  57,142%  |  28,571%  |
  
 Resulta que no hay una relación constante entre el tamaño de la fuente y el tamaño del padding.  Resulta que no hay una relación constante entre el tamaño de la fuente y el tamaño del padding. 
-Por lo tanto si aumentamos el tamaño de fuente en el navegador , los padding no deberían aumentar proporcionalmente sino tal y como vemos en esta última tabla.+ 
 +Es decir para un tamaño normal el padding horizontal es el 75% del tamaño de la fuente pero  
 +en un botón grande (que el tamaño de fuente es más grande) el padding horizontal es el 80% del tamaño de la fuente 
 +y para terminar en un botón pequeño el padding horizontal es el 57% del tamaño de la fuente. ¿No debería ser constante el tamaño del padding respecto del tamaño de fuente? Por lo tanto si aumentamos el tamaño de fuente en el navegador , los padding no deberían aumentar proporcionalmente sino como vemos que lo hace bootstrap.
  
  
Línea 222: Línea 225:
  
 ==== Calculo de valores con clamp ==== ==== Calculo de valores con clamp ====
-La siguiente gráfica muestra como funciona ''clamp(200px,60vw,400px)''.+La siguiente gráfica muestra como funciona ''clamp(200px, 59.88vw + 0.59px, 400px)''.
  
 {{ :clase:daw:diw:2eval:clamp.png |}} {{ :clase:daw:diw:2eval:clamp.png |}}
Línea 228: Línea 231:
 Para calcular los tamaños de pantalla donde se producen los cambios (puntos rojos) las variable son las siguientes: Para calcular los tamaños de pantalla donde se producen los cambios (puntos rojos) las variable son las siguientes:
  
-  * wlower: El ancho de pantalla para el valor mínimo. +  * wlower: El ancho de pantalla para el valor mínimo que es ''333px''
-  * wupper: El ancho de pantalla para el valor máximo. +  * wupper: El ancho de pantalla para el valor máximo que es ''667px''
-  * minvalue: El valor mínimo de la propiedad CSS +  * minvalue: El valor mínimo de la propiedad CSS que es ''200px''. 
-  * maxvalue: El valor máximo de la propiedad CSS+  * maxvalue: El valor máximo de la propiedad CSS que es ''400px''.
 \\ \\
-  * pendiente: El valor que se pone en vw.+  * pendiente: El valor que se pone en ''vw'' que es ''59.88vw''.. 
 +  * coeficienteposición: Es el valor que se suma a la pendiente en ''px'' que es ''0.599px''.
  
-$$ 
-pendiente=60 
-\\ 
-min=200 
-\\ 
-max=400 
-$$ 
-\\ 
-\\ 
-$$ 
- 
-w_{lower} * \frac {pendiente}{100}=min_{value} 
-\\ 
-w_{lower} = \frac {min_{value}*100}{pendiente}= \frac {200*100}{60}=333px 
-$$ 
- 
-\\ 
-\\ 
-$$ 
-w_{upper} * \frac {pendiente}{100}=max_{value} 
-\\ 
-w_{upper} = \frac {max_{value}*100}{pendiente}= \frac {400*100}{60}=667px 
- 
- 
-$$ 
  
 +Pero, ¿como calculamos los valores de pendiente y coeficienteposición?.
  
 De forma genérica podemos establecer los valores de las 4 variables de la siguiente forma: De forma genérica podemos establecer los valores de las 4 variables de la siguiente forma:
Línea 269: Línea 249:
  
 $$ $$
-pendiente=\frac {max_{value} - min_{value}}{w_{upper} - w_{lower}}*100+pendiente=\frac {max_{value} - min_{value}}{w_{upper} - w_{lower}} \cdot 100
 \\ \\
-coeficiente_{posición}=min_{value} - \frac{pendiente}{100}*w_{lower}+coeficiente_{posición}=min_{value} - \frac{pendiente}{100} \cdot w_{lower}
 $$ $$
  
Línea 283: Línea 263:
  
 $$ $$
-pendiente=\frac {max_{value} - min_{value}}{w_{upper} - w_{lower}}=\frac {20-12}{600-230}*100=2,1621622+pendiente=\frac {max_{value} - min_{value}}{w_{upper} - w_{lower}} \cdot 100=\frac {20-12}{600-230} \cdot 100=2,1621622
 \\ \\
-coeficiente_{posición}=min_{value} - \frac{pendiente}{100}*w_{lower}=12-\frac{2,1621622}{100}*230=7,02702694+coeficiente_{posición}=min_{value} - \frac{pendiente}{100} \cdot w_{lower}=12-\frac{2,1621622}{100} \cdot 230=7,02702694
 $$ $$
  
Línea 293: Línea 273:
 .c-titulo { .c-titulo {
     font-size: clamp(12px,2.1621622vw + 7.02702694px,20px);     font-size: clamp(12px,2.1621622vw + 7.02702694px,20px);
 +}
 +</sxh>
 +
 +
 +En la primera figura 
 +
 +{{ :clase:daw:diw:2eval:clamp.png?300 |}}
 +
 +cuyos valores eran:
 +  * wlower: 333px
 +  * wupper: 667px
 +  * minvalue: 200px
 +  * maxvalue: 400px
 +
 +Entonces
 +
 +$$
 +pendiente=\frac {max_{value} - min_{value}}{w_{upper} - w_{lower}}\cdot 100=\frac {400-200}{667-333} \cdot 100=59.88
 +\\
 +coeficiente_{posición}=min_{value} - \frac{pendiente}{100} \cdot w_{lower}=200-\frac{59.88}{100} \cdot 333=0.5989
 +$$
 +
 +Por lo tanto el css será:
 +
 +<sxh css>
 +.c-titulo {
 +    font-size: clamp(200px, 59.88vw + 0.5989px, 400px);
 } }
 </sxh> </sxh>
Línea 408: Línea 415:
             }             }
  
 +            .c-table__head--width-1 { 
 +              width: 100px; 
 +              min-width: 100px;   
 +            } 
 +            .c-table__head--width-2 { 
 +              width: 150px; 
 +              min-width: 150px;   
 +            } 
 +            .c-table__head--width-3 { 
 +              width: 200px; 
 +              min-width: 200px;   
 +            }
         </style>         </style>
     </head>     </head>
Línea 422: Línea 440:
                 <th class="c-table__head c-table__head--min-width-2 c-table__head--max-width-3 ">Title</th>                 <th class="c-table__head c-table__head--min-width-2 c-table__head--max-width-3 ">Title</th>
                 <th class="c-table__head c-table__head--min-width-1 c-table__head--max-width-2">Year</th>                 <th class="c-table__head c-table__head--min-width-1 c-table__head--max-width-2">Year</th>
-                <th class="c-table__head c-table__head--min-width-1 c-table__head--max-width-2">ISBN-13</th> +                <th class="c-table__head c-table__head--width-3">ISBN-13</th> 
-                <th class="c-table__head c-table__head--min-width-1 c-table__head--max-width-2">ISBN-10</th>+                <th class="c-table__head c-table__head--width-2">ISBN-10</th>
               </tr>               </tr>
             </thead>             </thead>
Línea 625: Línea 643:
  
   * [[https://dev.to/polypane/css-breakpoints-used-by-popular-css-frameworks-hl9|CSS breakpoints used by popular CSS frameworks]]   * [[https://dev.to/polypane/css-breakpoints-used-by-popular-css-frameworks-hl9|CSS breakpoints used by popular CSS frameworks]]
-  * [[https://gist.github.com/ptibbetts/7b726ae20914c11eb953fdfdf3ee34ed|Comparing Breakpoints in CSS Toolkits and Frameworks]]+  * [[https://gist.github.com/paultibbetts/7b726ae20914c11eb953fdfdf3ee34ed|Comparing Breakpoints in CSS Toolkits and Frameworks]]
  
  
Línea 754: Línea 772:
 </note> </note>
  
-  * Interno/Fluido: Se suele usar con imágenes.+  * Interno/Fluido: Las tablas
  
 <sxh css> <sxh css>
Línea 859: Línea 877:
  
 ==== Ejercicio 5 ==== ==== Ejercicio 5 ====
-Dado el típico layout de cabecera, menú lateral, cuerpo y pie. Haz una página HTML pero de forma que si el tamaño de la pantalla es menor que 500px no se vea el menú lateral. Deberás hacerlo usando BEM+Dado el típico layout de cabecera, menú lateral, cuerpo y pie. Haz una página HTML pero de forma que si el tamaño de la pantalla es menor que 500px no se vea el menú lateral. Deberás hacerlo usando BEM e externo.
  
 ==== Ejercicio 6 ==== ==== Ejercicio 6 ====
 Crea una clase css llamada ''.g--color-fondo-responsivo'' de forma que cambia el color de fondo si el ancho del dispositivo (o ventana) tiene: Crea una clase css llamada ''.g--color-fondo-responsivo'' de forma que cambia el color de fondo si el ancho del dispositivo (o ventana) tiene:
  
-  * Menos de 500px sea de color rojo +  * Menos de 576px sea de color rojo 
-  * Entre 500px 750px sea de color verde +  * Entre 576px 768px sea de color verde 
-  * Entre 750px 1000px sea de color azul +  * Entre 768px 992px sea de color azul 
-  * Más de 1000px sea de color naranja+  * Más de 992px sea de color naranja
  
 Lo usarán en una página HTML donde estará un cuadrado de 200px x 200px Lo usarán en una página HTML donde estará un cuadrado de 200px x 200px
clase/daw/diw/2eval/tema06.1735841151.txt.gz · Última modificación: 2025/01/02 19:05 por admin