Оптимизация html и css по сравнению с оптимизацией png - бесполезная ерунда. Вы можете выиграть допустим 2-5 кб против 2-3 мб одного png, в условиях современного интернета этот выигрыш ничего не даст. Даже запрос на сервер может больше времени занять чем скачивание.
Необходимо обратиться именно к оптимизации png при этом желательно с минимальными потерями по качеству.
Советую для начала ознакомиться вот с этой статьёй
How To Optimize PNG, а потом поискать инструмент поудобнее, просто погуглив PNG optimizer. Вот
сравнение нескольких пакетных оптимизаторов. Я при необходимости оптимизации png использую
RIOT, он может оптимизировать png, gif и jpg. Из личного опыта - советую попробовать первым делом оптимизацию палитры. Плюс есть не искажающие оптимизации (например, удаление мета-данных). Если используете прозрачность - она сильно добавляет веса в изображение, с ней тоже можно бороться.
Всё это хорошо, если у вас есть возможность оптимизировать изображения, статично размещенные на сайте.