У меня голова уже давно работает так, что я прежде чем писать html и css код, валидирую его в голове, распознавая, это каноничный html или изврат и мне придется мучиться. Если приходится мучиться, я ищу другой путь решения той же задачи, но чтобы получился снова каноничный. И всегда находится альтернатива не хуже первой идеи с извратами.