Pregunta

Si tengo nombres de clase como " izquierda ", " derecha " ;, " claro " y xhtml como

<a href="index.php" class="right continueLink">Continue</a>

Con CSS como

.right {
float: right;
}

Sé que no es un nombre semántico, pero a veces hace las cosas mucho más fáciles.

De todos modos, ¿cuáles son tus pensamientos?

¿Fue útil?

Solución

No creo que sea una buena idea. Ahora, cuando usted (o un futuro mantenedor) vaya a cambiar el diseño de su sitio web, tendrá que cambiar .right a {float: left;} (obviamente un error). idea) o vaya a través de todos sus archivos HTML y cambie derecha a izquierda .

¿Por qué quieres que ese enlace en particular se mueva a la derecha y el otro .continueLink no lo haga? Use la respuesta a esa pregunta para elegir un nombre de clase más descriptivo para ese enlace.

Otros consejos

css es sobre la presentación de la estructura de tu página html.

Significa que sus clases deben representar la estructura del documento ('artículo', 'enlaces adicionales', 'glosario', 'introducción', 'conclusión', ...).

Debes evitar cualquier clase vinculada a una representación física ('izquierda', 'derecha', 'notas al pie', 'sidenotes', ...), porque, como Zen Garden así lo ilustra claramente, usted puede decidir colocar cualquier div de varias maneras diferentes y diferentes.

Los puristas dirán que no lo hagan, y los pragmáticos dirán que está bien. Pero, ¿definirían los puristas .right como float: left ?

Podría ser recomendable evitar nombres que sean iguales a los valores en las especificaciones de CSS para evitar confusiones. Especialmente en situaciones donde múltiples desarrolladores trabajan en la misma aplicación.

Aparte de eso no veo ningún problema. Calificaría el nombre correcto o izquierdo como este: menuleft, menuright etc.

Siendo un purista, digo que no lo hagas. Por las razones mencionadas anteriormente.

Siendo un pragmático, solo quería decir que nunca había visto un trabajo de retrabajo en el sitio web que implicara cambios html puros sin css, o css puro sin html, simplemente porque ambas partes se están desarrollando con la otra en mente. Entonces, en realidad, si alguien más NECESITA cambiar la página, apuesto mi salario a que cambiará tanto html como css.

Lo anterior es algo que los puristas de colegas a menudo tienden a ignorar, aunque sea la realidad. Pero la línea de fondo; no, evite usar un nombre de clase como " derecha " ;. :-)

.right y otras clases como esa, ciertamente hacen que sea rápido escribir una etiqueta con una regla float: right adjunta, pero creo que este método tiene más desventajas que ventajas:

A menudo, un estilo de clase con un único float: right; carecerá de algo, su ejemplo solo flotará a la derecha si la otra regla de clase contiene una pantalla de : block en ella, ya que una " una " La etiqueta no es un elemento de nivel de bloque. También los elementos flotantes más a menudo que no necesitan tener un ancho y una altura unidos. Esto significa que el código en su ejemplo necesita un código adicional para hacer lo que dice, y tiene que buscar en dos lugares cuando tenga que cambiar su css.

Tiendo a aplicar estilos a mi html al dividir la página en diferentes etiquetas div con identificadores únicos, y luego diseñar elementos en estas div por herencia como esta.

div#sidebar { float:right; width:200px; }
div#sidebar ul { list-style-type:none; }

Esto hace posible la partición de mis archivos css, de modo que es fácil encontrar el código css que da estilo a una etiqueta en particular, pero si introduce .right y otras clases, está comenzando a dispersar las reglas en diferentes áreas de El archivo css, lo que hace que el sitio sea más difícil de mantener.

Creo que la idea de tener clases muy genéricas nace del deseo de hacer posible cambiar el diseño completo del sitio cambiando un par de reglas en una hoja de estilo, pero debo decir que en mis 8 años de desarrollo de sitios web con más de 30 años, diferentes sitios en mi haber, una vez no he cambiado el diseño de un sitio web y he reutilizado el HTML.

Lo que he hecho innumerables veces es realizar pequeños ajustes en las regiones de las páginas, ya sea debido a pequeños cambios en el diseño o la introducción de nuevos navegadores. Así que estoy a favor de mantener mi css dividido en partes ordenadas que facilite la búsqueda de las reglas que busco, y no colocar el código en diferentes lugares para lograr una hoja de estilo más corta.

Saludos Jesper Hauge

Hablando semánticamente, es incorrecto, pero, por ejemplo, hay veces en que coloco imágenes dentro de un bloque de copia del cuerpo y les doy la clase "derecha".

Tal vez " alt " es un nombre de clase más adecuado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top