Le html et le css sont plus une question de structuration que de logique informatique.
C'est normal de te planter si tu n'as jamais fais de logique informatique, c'est difficile au début, on a du mal à avoir l'intuition, mais il suffit de pratiquer et ça devient rapidement fun.
Je te conseillerai d'aller au delà des TP, pense un projet, demande toi comment le faire, passe 1 ou 2 semaines dessus. On apprend pas en 1 jour 
Après sur PHP, l'idée c'est de passer rapidement aux frameworks (Symfony). Il faut pas prendre l'habitude de coder du PHP en mode old-school sauf pour des petites applications