There may not be any problem for your method, but it may take forever for the trees to grow if you use the minimum height.
Here's a screenshot showing me growing trees with your pattern, and it works:
The most common spruce tree (the one in my screenshot) can grow into 7 to 10 blocks (not sure about the maximum) high, but you need an air block between the top leaf block and the ceiling, so the minimum height is 8. (I see
7 on Minecraft Wiki, but I've tried 7 block and no matter how many bone meals I give the saplings they just don't grow.
OK, with 8 blocks of air vertically, I am able to grow them, but it may take forever. The reason behind this is that, every time a tree grows, it picks a form, and if the space requirement doesn't meet it will simply not grow and wait for the next chance.
Right now I've already run Minecraft half an hour, and I only see one shy little spruce sapling grown into a spruce tree naturally. So I believe if you want to get spruce trees to grow fast enough you will need at least 11 blocks vertical empty space or just give them hundreds of bone meals.
If you don't have that much space, you can try to sing "I'm a sapling" 9 times in a row, repeatedly. i.e.:
I'm a sapling, I'm a sapling, I'm a sapling, I'm a sapling, I'm a sapling, I'm a sapling, I'm a sapling, I'm a sapling, I'm a sapling gasp
A variant of the spruce tree shown in the screenshot is 7 blocks wide, so to further increase grow rate you can make each sapling separate by three blocks, but this is not mandatory and will decrease the tree density.
There are also two forms of spruce tree (those which look like tall sticks), and they are... very rare. I think I just planted more than a hundred of spruce trees with bone meals and I don't even get a single spruce tree in those forms! The conclusion: you don't need to reserve 18 blocks of empty space to accommodate those forms of spruce trees.
Forgot to add credits: smooth stone room built by MCEdit.