For my input, which can either have classname=\"half\" or \"half.not-placeholder-value\", Firebug shows both inputs to have a set, fixed width of
classname=\"half\"
\"half.not-placeholder-value\"
This is not really an IE8 issue since IE8 does support the max-width attribute but only when given a defined width first.
input.half, input.half.not-placeholder-value { width: 100%; max-width: 25em; }