L'HTML est un langage de balisage, ça s'apprend très vite.
Si tu as un semblant de jugeote et un peu de logique, tu peux saisir le truc en 2 ou 3 jours, voire moins. Tant qu'à commencer, essaie d'apprendre directement à faire du html sémantique, ce sera toujours ça de gagné pour la suite (google est ton pote, cherche).
CSS, c'est une autre paire de manches : c'est un langage simple à apprendre (la syntaxe s'apprends en une demi-journée), et tu peux vite arriver à des résultats sympas, mais à maîtriser vraiment, ça prend plus de temps. C'est pour ça qu'il y a des gens dont le métier, c'est juste d'intégrer en CSS.
Ceci dit, si ton objectif c'est de passer vers le php, en faisant ça bien, tu peux en savoir assez sur html/css en une petite semaine. Ça te permettra de connaître les bases, et tu t'amélioreras au fur et à mesure que tu seras confrontés à des problèmes (la meilleure façon d'apprendre).
Moi j'aime bien les tutos de CodeSchool, mais quand je donne le lien sur le forum, les gens râlent pasque c'est payant.
Pour voir les bases gratuitement, tu peux aussi aller sur CodeAcademy, qui a l'avantage de te donner des exercices à remplir directement dans le navigateur.