Otro blog más de diseño
Vamos a ver de que forma podemos maquillar los feos controles de upload de los formularios sin utilizar javascript y validando xhtml.
Lo que vamos a hacer es colocar un div en lugar del input_file, y este dentro del div de la siguiente manera
<div class="upload">
<input type="file" name="upload" />
</div>
Aplicamos ahora una capa de maquillaje que lo deje irreconocible
div.upload {
position: relative;
width: 80px;
height: 24px;
overflow:hidden;
background:url(btn_upload.png) left top no-repeat;
clip:rect(0px, 80px, 24px, 0px );
}
div.upload input {
position: absolute;
left: auto;
right: 0px;
top: 0px;
margin:0;
padding:0;
filter: Alpha(Opacity=0);
-moz-opacity: 0;
opacity: 0;
}
Qué es lo que hemos hecho ? Simplemente hacer transparente el input_file, y mediante la propiedad css “clip” evitamos que el control se salga de los límites del div.
Y para que su aspecto sea más profesional todavía, le añadimos al div una imagen como esta
![]()
Qué puedo decir de mi que no se haya dicho ya antes.
Dando estilo a los input tipo file | Webmaster Libre
enero 29th, 2009 el 5:37 pm
[...] general no suele suponer más que una molestia sin más pero, por la dificultad de hacerlo con CSS, solemos dejarlo así sin [...]
Dando estilo a los input tipo file | dominios, diseño web, ecommerce - Mantis Technology Solutions Blog
enero 30th, 2009 el 6:59 am
[...] general no suele suponer más que una molestia sin más pero, por la dificultad de hacerlo con CSS, solemos dejarlo así sin [...]
Mauricio Moreno
julio 17th, 2009 el 11:41 pm
Amigo muchas gracias.
Facil, sencillo y funcional.
cmacias
julio 18th, 2009 el 12:17 am
Un verdadero placer
ale Photoshop
agosto 26th, 2009 el 2:40 am
Buenas muchachos,
Les escribo acá en el primer post que me crucé de esta pagina que me gusta mucho, porque se que aquí hay muchos ex forum.macromedia.com… y estoy necesitando a alguna amita caritativa que me de una ayudita simple con un script para hacer un RANDOM en AS2… ¿se están juntando en algun foro en particular? bueno… espero no molestarlos y si me tiran alguna dirección con algun foro con un flujo frecuente de feedback se los voy a agradecer, y sino, alquien que me quiera dar una mano directamente, no hay drama… gracias…! y saludos Macias!
cmacias
agosto 26th, 2009 el 10:27 am
Buenas, “Ale”. Yo más que acceder a foros o listas concretas, suelo acceder a los Feed de Adobe [ http://feeds.adobe.com/ ]. Siempre se encuentran cosas muy interesantes.
Un saludo !
mouta
abril 26th, 2010 el 5:22 pm
exelente. muchs gracias
Alex sanyago
mayo 7th, 2010 el 6:41 pm
Esta muy bien y si funciona y ya me salio pero para los que no saben y el codigo para c# de donde lo pueden sacar…!!
yo ya lo saque asi que aqui lo pongo para aquellos que no sepan como yo…
string fn = System.IO.Path.GetFileName(flimage.PostedFile.FileName);
string SaveLocation = “e:” + “\\” + “Imagenes_SIPCE” + “\\” + fn;
try
{
flimage.PostedFile.SaveAs(SaveLocation);
//this.lblmessage.Text = “El archivo se ha cargado.”;
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
Alex sanyago
mayo 7th, 2010 el 6:42 pm
solo para aclarar las dudas ese codigo anterior es un complemento para el codigo que ustedes ponen saludos espero les sirva.
ALEX SANYAGO
mayo 19th, 2010 el 5:32 pm
como leer un archivo de excel desde c# solo cambien la direccion de mi archivo y el nombre adaptandolo al suyo.
Cambien el nombre donde dice datagrid4 por el nombre de su datagrid para que funcione
String sConnectionString = “Provider=Microsoft.Jet.OLEDB.4.0;” + “Data Source=” + “E:\\” + “Imagenes_SIPCE” + “\\” + “ExcelData.xls” + “;” + “Extended Properties=Excel 8.0;”;
OleDbConnection objConn = new OleDbConnection(sConnectionString);
objConn.Open();
OleDbCommand objCmdSelect = new OleDbCommand(@”SELECT * FROM [Materiales$]“, objConn);
OleDbDataAdapter objAdapter1 = new OleDbDataAdapter();
objAdapter1.SelectCommand = objCmdSelect;
DataSet objDataset1 = new DataSet();
objAdapter1.Fill(objDataset1, “XLData”);
DataGrid4.DataSource = objDataset1.Tables[0].DefaultView;
DataGrid4.DataBind();
objConn.Close();
peguen el codigo en el pageload o donde quieranq ue cargue su archivo.
Elisa
septiembre 13th, 2010 el 11:43 pm
Hola gracias por el ejemplo esta muy claro y me funciono a la primera solo cambie las direcciones que alex sanyago publica por las mias, una duda nadamas ya fuera de tema alex sanyago es famoso, si es el chico que sale en todas las redes o este alex sanyago es otro distinto a el.
Luis
septiembre 13th, 2010 el 11:44 pm
Gracias alex sanyago el ejemplo esta muy claro y con la adaptacion que publicas corre perfectamente en mi programa.
Rocio
octubre 25th, 2010 el 6:24 pm
No entendi bien ninguno de los codigos me los pueden explicar con un poco mas de detalle si no es mucha molestia
lipedead
enero 27th, 2011 el 8:07 pm
hey muy bueno
gracias
cmacias
enero 27th, 2011 el 8:32 pm
Gracias
Un saludo
Jorge
septiembre 29th, 2011 el 8:49 pm
Muy buenos los ejemplos me funcionaron muy bien gracias sigan publicando mas informacion que sirva como esta.
cmacias
septiembre 29th, 2011 el 9:19 pm
Hola Jorge, este es quizá más completo
http://www.cmacias.com/maquillar-un-file-upload-2/