怎样用纯HTML和CSS更改默认的上传文件按钮样式

怎样用纯HTML和CSS更改默认的上传文件按钮样式,第1张

我们的目标是创造一个简洁,用纯CSS实现的,在所有浏览器里的样子和布局是一样的上传文件按钮。我们可以这样:

步骤1.创建一个简单的HTML标记

Upload

第2步:CSS:

有点棘手了

.fileUpload

{

position:

relative

overflow:

hidden

margin:

10px

}

.fileUpload

input.upload

{

position:

absolute

top:

0

right:

0

margin:

0

padding:

0

font-size:

20px

cursor:

pointer

opacity:

0

filter:

alpha(opacity=0)

}

为简单起见,我使用应用了BootstrapCSS样式的按钮

(div.file-upload)。

演示:

上传按钮,显示选中的文件

不幸的是纯CSS的做不到这一点。但是,如果你真的想显示所选文件,下面的JavaScript代码片段可以帮助你。

JavaScript:

document.getElementById("uploadBtn").onchange

=

function

()

{

document.getElementById("uploadFile").value

=

this.value

}

DOM:

Upload

这个样式挺漂亮的,你可以试下:

<!DOCTYPE html>

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8" />

<title>定义input type="file" 的样式</title>

<style type="text/css">

body{ font-size:14px}

input{ vertical-align:middlemargin:0padding:0}

.file-box{ position:relativewidth:340px}

.txt{ height:22pxborder:1px solid #cdcdcdwidth:180px}

.btn{ background-color:#FFFborder:1px solid #CDCDCDheight:24pxwidth:70px}

.file{ position:absolutetop:0right:80pxheight:24pxfilter:alpha(opacity:0)opacity: 0width:260px }

</style>

</head>

<body>

<div class="file-box">

<form action="" method="post" enctype="multipart/form-data">

<input type='text' name='textfield' id='textfield' class='txt' />

<input type='button' class='btn' value='浏览...' />

<input type="file" name="fileField" class="file" id="fileField" size="28" onchange="document.getElementById('textfield').value=this.value" />

<input type="submit" name="submit" class="btn" value="上传" />

</form>

</div>

</body>

</html>

submit按钮的name值可以是不一样的。比如

<input type="submit" name="subFile" value='传附件" />

这样你在PHP端接受的时候可以就是

$_POST['subFile']

另外一个按钮可以这样写

<input type="submit" name="subText" value=“穿文本” />

那么PHP就可以接收到$_POST['subText']

你可以在PHP接收数据时,判断一下

if($_POST['subFile']){

//处理上传文件的代码

}elseif($_POST['subText']){

//处理上传文本的代码

}

这样说你明白吗


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11956983.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存