Why are Haki attacks not effective on admirals (akainu, Kizaru, aokiji) in one piece?
Obviously the admirals have logia-type fruit, check this:

Akainu fruit:  Magu_Magu_no_Mi

Aokiji fruit: Hie_Hie_no_Mi

Kizaru fruit: Pika_Pika_no_Mi

The problem here was the level of the power of the haki, this case the Busoshoku haki.

You have a lot of examples of different battles where you can see that the level difference in this type of haki allows one user hit other. A clear case is the fight of Roronoa Zoro vs Pica, where Zoro manages to hit Pica thanks to that his haki is superior.

Also the admirals are it affected for this haki, this is clear when Rayleigh used Haki to stop Kizaru and even touched his Logia body.