Menu a partir de un fichero CSS

Hace un tiempo vi en una web un codigo para que una web cargase un menu (simple y normal) directamente desde un fichero css en vez de tener que meter el codigo en cada fichero de la web.
Supongo que servira igual con cualkier codigo pero vamos pongo el ejemplo delmenu pq es en lo que lo kiero usar...

1 Respuesta

Respuesta
1
Si, se pueden utilizar archivos externos como CSS, JS o VBscript, entre otros. Por ejemplo, en el caso de
Un css en el head de tu/s pagina/s debes poner por ejemplo:
<LINK REL="stylesheet" TYPE="text/css" HREF="css/archivo.css">
Y en el archivo.css (que bien puede ser un archivo .txt renombrado a .css) no hay que especificar ningún tag, por ejemplo podía el archivo decir:
A.mapa:hover {
color: #000000;
text-decoration: none;
}
Asimismo para hacer lo mismo con un javascript:
<script language="JavaScript" src="archivo.js"></script>
Y si, con esto uno puede reutilizar el código tantas veces necesite sin tener que insertarlo en cada página, además de que a la hora de tener que modificarlo, al cambiar solamente ese archivo uno se ahorra mucho tiempo.
Muchisimas gracias por fin pude hacer lo que queria
Ok, ahora solo 2 dudas pq estoy intentando añadirlo pero me da error...
Veras el codigo que quiero incluir en el fichero css es un menu simple escrito en html:
<TABLE cellPadding=0 width="95%" border=0>
<TBODY>
<TR>
<TD
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
align=middle width="35%" bgColor=#204460> <P align=center><B><FONT face=Verdana color=#ffc800
size=1>Principal</FONT></B></P></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle
width="35%"><FONT face=Verdana color=#ffffff size=1><B><A
href="index.htm"
target=_top>Inicio</A></B></FONT></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle
width="35%"><FONT face=Verdana color=#ffffff size=1><B><A
href="http://miarroba.com/foros/ver.php?id=423118"
target=_blank>Foro</A></B></FONT></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle
width="35%"><FONT face=Verdana color=#ffffff size=1><B><A
href="miembros.htm"
target=_top>Miembros</A></B></FONT></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle
width="35%"><FONT face=Verdana color=#ffffff size=1><B><A
href="contactar.htm">e-Mail</A></B></FONT></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
onmouseout="javascript:this.style.background='#006CB8'" align=middle
width="35%"></TD>
</TR>
<TR>
<TD width="35%" height="19"
align=middle bgColor=#204460
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove">
<P align=center><FONT face=Verdana color=#ffc800
size=1><b>Socios</b></FONT></P></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle
width="35%"><FONT face=Verdana color=#ffffff size=1><B><A
href="traspasos.htm"
target=_top>Compra / Venta</A></B></FONT></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle
width="35%"><FONT face=Verdana color=#ffffff size=1><B><A
href="cesiones.htm"
target=_top>Cesiones</A></B></FONT></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle
width="35%"><FONT face=Verdana color=#ffffff size=1><B><A
href="juveniles.htm"
target=_top>Juveniles</A></B></FONT></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle><FONT face=Verdana color=#ffffff size=1><B><A
href="hacienda.htm"
target=_top>Hacienda</A></B></FONT></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle><FONT face=Verdana color=#ffffff size=1><B><a href="prestamos.htm">Prestamos</a></B></FONT></TD>
</TR>
<TR>
<TD height="19"
align=middle bgColor=#204460
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove">
<P align=center><FONT face=Verdana color=#ffc800
size=1><b>Extras</b></FONT></P></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle><FONT face=Verdana color=#ffffff size=1><B><A
href="secretario.htm"
target=_top>Secretario</A></B></FONT></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle><FONT face=Verdana color=#ffffff size=1><B><A
href="ojeador.htm"
target=_top>Ojeador</A></B></FONT></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle><FONT face=Verdana color=#ffffff size=1><B><A
href="grafico.htm"
target=_top>Diseño Grafico</A></B></FONT></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle><FONT face=Verdana color=#ffffff size=1><B><A
href="web.htm"
target=_top>Webmaster</A></B></FONT></TD>
</TR>
<TR>
<TD onmouseover="javascript:this.style.background='#005893'"
style="BORDER-RIGHT: #0099ff 2px groove; BORDER-TOP: #0099ff 2px groove; BORDER-LEFT: #0099ff 2px groove; BORDER-BOTTOM: #0099ff 2px groove"
onmouseout="javascript:this.style.background='#006CB8'" align=middle><FONT face=Verdana color=#ffffff size=1><B><A
href="precios.htm"
target=_top>Lista de Precios</A></B></FONT></TD>
</TR>
</TBODY>
</TABLE>
Como ves un codigo totalmente normal, yo lo meto en un txt y lo renombro a .css
Pero ahora el problema que tengo es que no se seguir, intento insertar una llamada a este css para que en laa vista previa de la web salga dicho menu pero no llega a salir dicho menu... ¿¿??
A ver, el archivo html te quedaría algo asi
----------------------
<html>
<head>
<LINK REL="stylesheet" TYPE="text/css" HREF="estilos.css">
</head>
<body>
<TABLE cellPadding=0 width="35%" border=0>
<TBODY>
<TR>
<TD class="tituloMenu">Principal</TD>
</TR>
<TR>
<TD class="itemMenu" onmouseover="javascript:this.style.background='#005893'" onmouseout="javascript:this.style.background='#006CB8'"><A href="index.htm" target=_top class="itemMenu">Inicio</A></TD>
</TR>
<TR>
<TD class="itemMenu"><A
href="http://miarroba.com/foros/ver.php?id=423118"
target=_blank class="itemMenu">Foro</A></TD>
</TR>
<TR>
<TD class="itemMenu" onmouseover="javascript:this.style.background='#005893'" onmouseout="javascript:this.style.background='#006CB8'"><A
href="miembros.htm"
target=_top class="itemMenu">Miembros</A></TD>
</TR>
<TR>
<TD class="itemMenu" onmouseover="javascript:this.style.background='#005893'" onmouseout="javascript:this.style.background='#006CB8'"><A
href="contactar.htm" class="itemMenu">e-Mail</A></TD>
</TR>
<TR>
<TD class="tituloMenu">Socios</TD>
</TR>
<TR>
<TD class="itemMenu" onmouseover="javascript:this.style.background='#005893'" onmouseout="javascript:this.style.background='#006CB8'"><A
href="traspasos.htm"
target=_top class="itemMenu">Compra / Venta</A></TD>
</TR>
<TR>
<TD class="itemMenu" onmouseover="javascript:this.style.background='#005893'" onmouseout="javascript:this.style.background='#006CB8'"><A
href="cesiones.htm"
target=_top class="itemMenu">Cesiones</A></TD>
</TR>
<TR>
<TD class="itemMenu" onmouseover="javascript:this.style.background='#005893'" onmouseout="javascript:this.style.background='#006CB8'"><A
href="juveniles.htm"
target=_top class="itemMenu">Juveniles</A></TD>
</TR>
<TR>
<TD class="itemMenu" onmouseover="javascript:this.style.background='#005893'" onmouseout="javascript:this.style.background='#006CB8'"><A
href="hacienda.htm"
target=_top class="itemMenu">Hacienda</A></TD>
</TR>
<TR>
<TD class="itemMenu" onmouseover="javascript:this.style.background='#005893'" onmouseout="javascript:this.style.background='#006CB8'"><a href="prestamos.htm" class="itemMenu">Prestamos</a></TD>
</TR>
<TR>
<TD class="tituloMenu">Extras</TD>
</TR>
<TR>
<TD class="itemMenu" onmouseover="javascript:this.style.background='#005893'" onmouseout="javascript:this.style.background='#006CB8'"><A
href="secretario.htm"
target=_top class="itemMenu">Secretario</A></TD>
</TR>
<TR>
<TD class="itemMenu" onmouseover="javascript:this.style.background='#005893'" onmouseout="javascript:this.style.background='#006CB8'"><A
href="ojeador.htm"
target=_top class="itemMenu">Ojeador</A></TD>
</TR>
<TR>
<TD class="itemMenu" onmouseover="javascript:this.style.background='#005893'" onmouseout="javascript:this.style.background='#006CB8'"><A
href="grafico.htm"
target=_top class="itemMenu">Diseño Grafico</A></TD>
</TR>
<TR>
<TD class="itemMenu" onmouseover="javascript:this.style.background='#005893'" onmouseout="javascript:this.style.background='#006CB8'"><A
href="web.htm"
target=_top class="itemMenu">Webmaster</A></TD>
</TR>
<TR>
<TD class="itemMenu" onmouseover="javascript:this.style.background='#005893'" onmouseout="javascript:this.style.background='#006CB8'"><A
href="precios.htm"
target=_top class="itemMenu">Lista de Precios</A></TD>
</TR>
</TBODY>
</TABLE>
</body>
</html>
----------------------
Y el archivo css que en este caso yo lo llamé estilos.css:
------------------------
A.itemMenu {
color: #FFFFFF;
text-decoration: none;
}
A.itemMenu:visited {
color: #FFFFFF;
text-decoration: none;
}
A.itemMenu:hover {
color: #FFFFFF;
text-decoration: none;
}
.itemMenu {
font-family: Verdana;
border: 2px groove #0099ff;
font-size: 9px;
font-weight: bold;
background-color: #006CB8;
text-align: center;
}
.tituloMenu {
font-family: Verdana;
border: 2px groove #0099ff;
font-size: 9px;
font-weight: bold;
color: #ffc800;
background-color: #204460;
text-align: center;
line-height: 18px;
}
---------------------------
En este caso, no vale la pena hacer un js para reemplazar los javascripts de las celdas, ya que el problema mayor de esto reside en que deberíamos diferenciar que cedas llevarían ese js y cuales no. Si todas tus celdas de la página reaccionasen al mouse, convendría, pero en este caso, te llevaría el mismo tiempo y esfuerzo dejarlo como está que programandolo todo.
El mouseover/out, sólo puede manejarse mediante javascript y no con css, en el caso de las tablas.
En el caso de un texto con link, yo te armé las clases
A.itemMenu , donde A se refiere al A de <A href="...
Y en este caso si existe las propiedades de Hover (para mouseover, active, link y visited) por lo que bien puede usarse sólo CSS.
Supuse como habías puesto el texto de los links en #FFFFFF, que querías que siempre aparecieran así.
Pero bueno, creo que con este ejemplo ya te darás cuenta mejor de como funciona todo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas