Смысл понял, но не понял зачем это все ? Разве css не станавливает свойство style.* для каждого элемента? Если так, то зачем ломать голову?
Простое решение - перегонять ссылку .style первого элемента в массиве как свойство массива. Хотя так не пробовал но должно сработать.
<div style='width:10px; height: 10px; background: #0f0;'></div>
<div style='width:20px; height: 20px;'></div>
<script type='text/javascript'>
function $(tag){
var arr = [], els = document.getElementsByTagName(tag),i=els.length;
while (i--) arr[i] = els[i];
arr.style = (arr[0]||{style:{}}).style;
return arr;
}
setTimeout(function(){
alert($('div').style.background='#000')
},2000);</script>
Как и ожидал, работает. Но не тестил в др браузерах