I too felt this was needed, but unfortunately shesek's code doesn't work anymore. I quickly put this together which runs fine (right now) in Chrome. If Trello changes their code around it'll probably stop working as well though.
Anyway, this adds a tiny ×-symbol to the top left of every list which hides the list on click. It could definitely be improved with some localStorage or cookies, but for now it's OK to clean the board up when I keep Trello open for a whole work session.
(function () {
var closeList = function (list) {
list.style.transition = 'max-height 1s ease-in-out, max-width .2s 1s ease-in-out';
list.style.maxHeight = '4px';
list.style.maxWidth = '4px';
};
var openList = function (list) {
list.style.transition = 'max-height .2s 1s ease-in-out, max-width .2s ease-in-out';
list.style.overflow = 'hidden';
list.style.maxHeight = '6000px';
list.style.maxWidth = '250px';
};
var lists = document.getElementById('board').querySelectorAll('div.list');
for (var i = 0; i < lists.length; i++) {
(function () {
var list = lists[i];
var close = document.createElement('a');
openList(list);
close.setAttribute('href', '#');
close.setAttribute('class', 'close');
close.innerHTML = '×';
close.style.textDecoration = 'none';
close.style.position = 'absolute';
close.style.left = '1px';
close.style.top = '-5px';
list.appendChild(close);
close.addEventListener('click', function (e) {
e.preventDefault();
if (close.getAttribute('class') == 'close') {
closeList(list);
close.setAttribute('class', 'open');
close.innerHTML = 'o';
}
else {
openList(list);
close.setAttribute('class', 'close');
close.innerHTML = '×';
}
});
})();
}
})();