I dont know PHP, i just can playing with styles.
I try to adding font-awesome.min.css for square, jquery.min.js, and bootstrap.min.css
Hope you like this : JSFiddle
I change <select>
options into <ul><li>
tag.
$("ul").on("click", ".init", function() {
$(this).closest("ul").children('li:not(.init)').toggle();
});
var allOptions = $("ul").children('li:not(.init)');
$("ul").on("click", "li:not(.init)", function() {
allOptions.removeClass('selected');
$(this).addClass('selected');
$("ul").children('.init').html($(this).html());
allOptions.toggle();
});
ul {
font-family: 'FontAwesome';
height: 30px;
width: 150px;
border: 1px #000 solid;
}
ul li { padding: 5px 10px; z-index: 2; }
ul li:not(.init) { float: left; width: 130px; display: none; background: #ddd; }
ul li:not(.init):hover, ul li.selected:not(.init) { background: #09f; }
li.init { cursor: pointer; }
a#submit { z-index: 1; }
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" rel="stylesheet"/>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<ul class="list-unstyled">
<li class="init">[SELECT]</li>
<li data-value="value 1"><span style="color:#EFAE00"></span> Maple Gold</li>
<li data-value="value 2"><span style="color:#000316"></span> Midnight Black</li>
<li data-value="value 3"><span style="color:#B7A8BA"></span> Orchid Gray</li>
</ul>