The error floor performance of finite-length irregular low-density parity-check (LDPC) codes can be very poor if code degree distributions are chosen to optimize the threshold performance. In this paper we show that by constraining the optimization process, a balance between threshold and error floor performance can be obtained. The resulting degree distributions give the best threshold performance subject to some minimum requirement on the error floor.