Think of a simple setup with three nested cubes - an outer, a middle, and an inner cube. They all get some simple material with the "Principled BSDF" shader. In the Cycles render engine you can decrease the Alpha value of the outer cube and the middle cube becomes visible. When you decrease the Alpha value of the middle cube the inner cube becomes visible (provided that the outer cube is transparent. So this is quite intuitive and straight-forward as expected.
The situation with Eevee is strange, however. First of all it is needed to change the "Blend Mode" in the additional material options to "Alpha Blend" and "Show Backface" needs to be disabled. However, I found that the Alpha blending is only working to the next surface whose materials "Blend Mode" is set to "Opaque". That is for instance, when the "Blend Mode" of the inner cube is set to "Opaque" (always visible), and the middle and outer cubes to "Alpha Blend", but the middle cube has got Alpha of 1 (so should be visible when the outer cube is transparent), the middle cube is not visible when I fade the outer cube into transparency. When the "Blend Mode" of the inner cube is set to "Alpha Blend" as well, then both the middle and inner cubes are like "not present" when I turn the outer cube transparent.
Is this behavior in Eevee normal or did I forgot some point?
Btw., the application behind that is to fade smoothly between multiple objects while the objects are slightly different in size in order to cope with "Z-fighting". At least with two objects this is working nicely. Perhaps there is also a different way to do this apart from such a nesting/transparency-approach. Ideas are welcome.
One work-around to deal with that issue might be to scale the objects dynamically (depending on the current frame) from within a script and also manipulate the "Alpha Blend" mode dynamically. I need to check that....
Thanks, Mario