If you still have issues fitting the dynamic legend in the printout, this is a good workaround:
In a separate mxd from the source mxd to be published (and in a different directory as well), make a legend that reflects all your desired layers.
In the legend properties, enable the fixed frame and text wrapping options, as discussed above.
Resize your legend to the desired size by the click-and-drag method on the layout UI.
Convert legend to graphic and save as jpg.
Insert picture into the layout from the source mxd to be published (which contains no layers), and save the image as part of the mxd by right-clicking>properties on the image.
In summary,
The problem w having Dynamic legend is that if have too many layers displayed, they may not all reflect in the legend.
In the case of many layers, I believe it is better to go with pic of legend.
If instead you have a few layers to display, dynamic legend is most likely ok.