is there a way to achieve this effect in a cross-browser compatible way without having to prepare separated images?
Basically the frame on which text lays has a white overlay of 50% opacity.. I would like a solution that doesn’t involve creating any other image in addition to the background but I don’t know if it’s possible!

Try RGBA, e.g.
As always, this won’t work in every single browser ever written.