Ich kann dir dazu keine Bücher empfehlen, aber etwas zu Techniken erzählen.
Du solltest können: HTML, CSS und Javascript.
Optimalerweise noch eine Programmiersprache wie PHP, Python oder ASP.NET (oder eben mit JS).
Bei CSS verwendet man heutzutage preprocessors wie LESS oder SASS.
Frontend-Frameworks sind auch immer mehr am kommen. Platzhirsche sind da vorallem Twitter's Bootstrap und Zurb's Foundation, aber auch Google's Material Design. Damit verbunden auch responsive design, also Design, dass auf möglichst vielen Endgeräten (vorallem Smartphones und Tablets) korrekt angezeigt wird.