As an example i use my 3dfx cards: in the photo you see all the loose cards standing right next to each other. This is done with placing them on wooden blocks which have cuts in them from a saw table they usually use in construction etc.
In between the cuts there is a 3cm gap. Cards do not touch for the most part and do not need a lot of space this way. I made a couple of blocks this way and also store my other video/sound cards like this.
In total something like 200+ cards and they only use a couple of shelfs. The idea was that i wanted to store them in a way that i can very easily grab one for usage/testing/benching/checking.. whatever.
Little drawback can be a bit of dust but i don't really care, it wil not hurt anything.
Edit: when i will make more i will probably do the cuts a bit more slant so longer cards can also fit. Cards like voodoo5, awe32 or VLB do not fit now, but otherwise it works perfectly.
asus tx97-e, 233mmx, voodoo1, s3 virge ,sb16
asus p5a, k6-3+ @ 550mhz, voodoo2 12mb sli, gf2 gts, awe32
asus p3b-f, p3-700, voodoo3 3500TV agp, awe64
asus tusl2-c, p3-S 1,4ghz, voodoo5 5500, live!
asus a7n8x DL, barton cpu, 6800ultra, Voodoo3 pci, audigy1