You can perform radial gradients. Ive set an example on JSFiddle: http://jsfiddle.net/17ohey9h/
The basic idea is to have a large overlay (generated content anchored to the container using overflow: hidden ), and then give it a radial gradient background with a hard stop for the transition. We can do this by setting two stops in the same position, but with the opposite transparency:
radial-gradient(ellipse at center, rgba(255,0,0,0) 0%,rgba(255,0,0,0) 50%,rgba(255,0,0,1) 50%,rgba(255,0,0,1) 100%)
Obviously, you can play with colors and positions, the general idea holds. Ive also provided only W3C syntax for this. You need to add older versions, depending on how far back your browser support is required.
source share