仅在asp.net FileUpload Control的Browse按钮上应用css

时间:2010-10-11 12:10:48

标签: c# .net asp.net css

我有像这样的FileUpload控件

<asp:FileUpload ID="fileuploader" runat="server" />

现在我只想在浏览按钮部分

上应用css

alt text

我该怎么做?

4 个答案:

答案 0 :(得分:13)

使用inputtype="file"标记设置样式需要一些工作,当您尝试不幸地设置样式时,浏览器的行为不同。

虽然有以下几种方法:

答案 1 :(得分:6)

显然你不能直接使用CSS来设置它们,但你可以“破解”一种新的风格 - 阅读以下文章了解详情

http://www.quirksmode.org/dom/inputfile.html

答案 2 :(得分:6)

This is possible you can change the FileUpload control using following code.

Step 1: Change FileUpload control with this code on aspx page

<label class="file-upload">
    <span><strong>Upload Image</strong></span>
    <asp:FileUpload ID="FileUpload1" runat="server" >
    </asp:FileUpload>
</label>

Step 2: now add below CSS code into your main CSS file

.file-upload {
    display: inline-block;
    overflow: hidden;
    text-align: center;
    vertical-align: middle;
    font-family: Arial;
    border: 1px solid #124d77;
    background: #007dc1;
    color: #fff;
    border-radius: 6px;
    -moz-border-radius: 6px;
    cursor: pointer;
    text-shadow: #000 1px 1px 2px;
    -webkit-border-radius: 6px;
}

.file-upload:hover {
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #0061a7), color-stop(1, #007dc1));
        background: -moz-linear-gradient(top, #0061a7 5%, #007dc1 100%);
        background: -webkit-linear-gradient(top, #0061a7 5%, #007dc1 100%);
        background: -o-linear-gradient(top, #0061a7 5%, #007dc1 100%);
        background: -ms-linear-gradient(top, #0061a7 5%, #007dc1 100%);
        background: linear-gradient(to bottom, #0061a7 5%, #007dc1 100%);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0061a7', endColorstr='#007dc1',GradientType=0);
        background-color: #0061a7;
}

/* The button size */
.file-upload {
    height: 30px;
}

.file-upload, .file-upload span {
        width: 90px;
}

.file-upload input {
            top: 0;
            left: 0;
            margin: 0;
            font-size: 11px;
            font-weight: bold;
            /* Loses tab index in webkit if width is set to 0 */
            opacity: 0;
            filter: alpha(opacity=0);
}

.file-upload strong {
            font: normal 12px Tahoma,sans-serif;
            text-align: center;
            vertical-align: middle;
}

.file-upload span {
            top: 0;
            left: 0;
            display: inline-block;
            /* Adjust button text vertical alignment */
            padding-top: 5px;
}

It's done.

答案 3 :(得分:2)

看看这个视频,你必须添加一个额外的按钮,但它有效 https://youtu.be/_O9YVO-Z-Xo