I am trying to design a Select tag as shown in the below figure:

Somehow I managed to design it by wrapping the select tag in a div. but the problem is that when I click the designed arrow, the select tag is not functioning or showing all the lists.
What I am expecting is that when I click on the arrow, the select tag should show all the Options. which is not happening because the arrow section is generated using the parent wrapper elements pseudo elements. I haven't used pseudo element selectors select tag because it seems to be not working.
I can solve this issue using background-image to the parent wrapper but as I have full rights to change the html as I can, I am looking for better approach without using images or javascript i.e using just CSS.
Here is the fiddle.
<div class="select-wrapper">
<select>
<option>EEE</option>
<option>ECE</option>
<option>EIE</option>
</select>
</div>
.select-wrapper {
display:inline-block;
border:1px solid #bbbbbb;
position:relative;
width:120px;
-webkit-border-radius:5px;
-moz-border-radius:5px;
border-radius:5px;
margin-top: 10px;
}
.select-wrapper:before{
content: "";
position:absolute;
right: 5px;
top:8px;
border-width: 5px 5px 5px 5px;
border-style: solid;
border-color: #666666 transparent transparent transparent ;
z-index:3;
}
.select-wrapper:after {
content:"";
display:block;
position:absolute;
top:0px;
bottom:0px;
width:20px;
right:0px;
border-left:1px solid #bababa;
background-color:#ededed;
-webkit-border-top-right-radius:5px;
-moz-border-top-right-radius:5px;
border-top-right-radius:5px;
-webkit-border-bottom-right-radius:5px;
-moz-border-bottom-right-radius:5px;
border-bottom-right-radius:5px;
}
select {
width:100%;
background-color:#ededed;
border:none;
outline:none;
padding:0px;
margin:0px;
position:relative;
}