Well, you didn't ask this one, but my first tip would be buried magnets (1/4" rare earth rod type) - they never break, self align, and are more than strong enough
For fabric, the best is purpose woven speaker grille cloth, but if you want colours other than standard black or browns, any stretchy open weave jersey will do in a pinch
Distance in front of the drivers is less important I think than thickness and proximity / inside profile of frame material. This is the one location in speaker projects that I always use MDF, and since my drivers are generally rebated for flush mounting, 3/8" is more than enough to allow for slight recess of magnets, as well as 45` chamfer on inside perimeter to reduce diffraction effects.
If your drivers are surface mounted, and/or you have felt tweeter pads, etc, then material thickness and number/size of magnets may need to be increased.
I find that a max. 1" frame width is adequate for strength for most grilles, perhaps with a cross member on taller / wider sizes. After trimming the panel to outside dimensions, set the blade height to just skim the surface and set the trim fence to an inch or so to trace a border around all edges to define cut-out boundaries. Draw a @ 45` line at the corners, about an inch out from the intersection for bracing of corner and to leave space to mount magnets at the intersection. If you're adventurous, reset the blade height on table saw and carefully plunge cut through at least one side of the frame, keeping well back from the corners. Finish the cutout with jig saw, sanding block (and bevel trim bit if you like, but this part is a bit trickier -you'll need a spacer block underneath workpiece for the bearing to ride)
Drill pilot/mounting holes that the intersection of borders - this will also provide your template for mating on enclosure face. Use masking tape to hold the frame in place on cabinet, then drill holes as required.
It might seem obvious, but using magnets, ensure consistent polarity on all pieces - I've embarrassed myself only once with that - and didn't actually test the grilles until the fabric was on!
Even if you don't want to use magnets, the above will work perfectly fine with any type of snap fastener. I've use them all, and even velcro - the magnets are only thing that has never failed (well except for the polarity issue)
Make sure the cloth clears the bass drivers by more than the one way
mechanical Xmax, I've seen commercial speakers making this mistake,
especially with convex surrounds, but nearly all nowadays are concave.
Bevel the outside and inside of any grill frame, an irregular e.g. angled
inside shape to the frame is better than a simple regular pattern, vary
the path differences to the tweeter as much as possible, usually, and
the distance from the inside edges to the outside edges, again usually.
Stretch polyester is the usual stuff used, if its not visually opaque
then it is usually not audibly opaque, in place it might look opaque,
usually, but with direct light you should be able to see through it.