Привет!
Не учил, считаю это бестолковым занятием. Забивать голову лишним хламом совершенно ни к чему. Если это не твоя профессия, то без ежедневной практики один фиг забудешь большую часть того, что выучил.
Со временем просто приходит понимание основ, фундаментальные знания, а дальше с помощью фаербага(или аналогов) берешь и заимствуешь нужные CSS классы с понравившихся сайтов и всё.
Я так программирование в свое время учил. Выучишь какую-то часть, проходит время всё забыл. Так продолжалось до тех пор, пока не плюнул на зубрежку и не начал практиковать и писать реальные проекты. С практикой фундаментальные знания хорошо запомнились, а когда что-то не знаешь, всегда есть онлайн документация и гугл под рукой.
Год проработал в довольно крупной компании, так вот, был очень удивлен, но даже топовые программисты не знают "всего", т.к. просто физически всё знать невозможно. Сейчас такое время, что чуть ли не каждый день выходят новые технологии, попробуй всё это выучи, это невозможно. Топовые спецы так же знают только фундаментальные основы, а всё остальное, неизвестное, читают в документации и догугливают. Когда знаешь основы и понимаешь принципы, то знаешь что искать и куда двигаться.
Так что, мой совет - не зубри и не учи. Решай конкретные задачи и со временем поймешь как всё устроено, а дальше дело техники.
Как-то так. Удачи в начинаниях!