Grow your CSS skills. Land your dream job.

Last updated on:

Force File Upload Input Button To Right Side In WebKit

Firefox and IE have the "choose file" button to the right of the filepath, while Webkit puts it on the left. This makes WebKit put it on the right as well.

<input type="file">
input[type="file"]{
   -webkit-appearance: none;
   text-align: left;
   -webkit-rtl-ordering:  left;
}
input[type="file"]::-webkit-file-upload-button{
   -webkit-appearance: none;
   float: right;
   margin: 0 0 0 10px;
   border: 1px solid #aaaaaa;
   border-radius: 4px;
   background-image: -webkit-gradient(linear, left bottom, left top, from(#d2d0d0), to(#f0f0f0));
   background-image: -moz-linear-gradient(90deg, #d2d0d0 0%, #f0f0f0 100%);
}

Reference URL

Comments

  1. Any reason you have -moz-linear-gradient where the selector is WebKit specific? In this case, input[type="file"]::-webkit-file-upload-button.

  2. Kim Casault
    Permalink to comment#

    I just heard your SitePoint podcast this morning and then, voila, here you are helping me get Webkit to conform. Awesome and thank you.

  3. Permalink to comment#

    My site is just starting.
    I´ve been working at Accenture, great company, but little time for html development. Just starting as a hobby. My friend, is it possible to make a living doing websites like this? or is this only your hobby?

    other question, I love this comment design, how are this created! I need one like this comment section =)

    Great work!
    Thanks
    Daniel from Monterrey

  4. Who?
    Permalink to comment#

    What’s the point?

  5. Lohith
    Permalink to comment#

    Hi,

    The solution provided in the post exactly works in the chrome. Thanks for the great work. But its not supporting to Mozilla.

    any solution regarding this?

Leave a Comment

Posting Code

Markdown is supported in the comment area, so you can write inline code in backticks like `this` or multiline blocks of code in in triple backtick fences like this:

```
<div>Example code</div>
```

You don't need to escape code in backticks, Markdown does that for you. If anything screws up, contact us and we can fix it up for you.

*May or may not contain any actual "CSS" or "Tricks".