View search-icon.css
.search-submit { /* Single element search icon, no pseudo elements */
width: 15px;
height: 15px;
border: 2px solid; /* Not specifying color means border + box-shaddow gets currentColor (font color) */
border-radius: 100%;
box-shadow: 6px 6px 0 -6px, 7px 7px 0 -6px;
background: none;
color: inherit;
font-size: 0; /* Hide text */
padding: 0;
View addEventListener-polyfill.js
//addEventListener polyfill 1.0 / Eirik Backer / MIT Licence
(function(win, doc){
if(win.addEventListener)return; //No need to polyfill
function docHijack(p){var old = doc[p];doc[p] = function(v){return addListen(old(v))}}
function addEvent(on, fn, self){
return (self = this).attachEvent('on' + on, function(e){
var e = e || win.event;
e.preventDefault = e.preventDefault || function(){e.returnValue = false}
e.stopPropagation = e.stopPropagation || function(){e.cancelBubble = true}