Bende background kullanırım ama diğer türlüde sakıncası olduğunu düşünmüyorum. Sorunlarla karşılaşmamak için bazı standartlara uymamız gerekiyor aksi halde sorunlarla karşılaşmak kaçınılmaz.
Projelerinizde mutlaka DOCTYPE ve reset.css kullanın yoksa tarayıcılar kendi kafalarına göre hareket ederler.
Probleminiz doctype kullanmadığınız için kaynaklanıyor.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">