Только одна загвоздка: между дочерними div'ами надо удалять пробелы и переносы строк, иначе он эти пробелы и переносы считает за дочерний элемент. Нельзя это как-то обойти иначе?
Нет. Весь текст между тегами(включая пробелы, табы и переносы строки) - это элементы dom. Обойти их можно в цикле.
А может кто-то знает про проблему в обращении через document.main.start.blog.element.style... Как правильно?
Правильно - это пользоваться методом getElementById или getElementsByName и на худой конец - getElementsByTagName.
document.all - это чисто IE'шная приблуда, которая не стандартизирована и уже устарела. Тем не менее, ее поддерживают другие браузеры для совместимости со старым IE'шным кодом, но использовать это в новых скриптах - кощунство. А обращение document.elementid.итд.итп - это вообще откуда? Где ты такое нашел?