The one side of headers' length is too short, it cannot connect to the board very well,
How to solve?
Too short, or not the same number of shield male header pins to match all the arduino header socket holes?
Be aware that the latest versions of arduino boards add female socket pins on two of the shield connectors, the one having the digital pins D8 to D13, ground and Aref have had SDA and SDL I2C control signals added. And on the connector block having Vin, ground, ground, 5V, 3.3, reset have had IOREF and an unused reserve socket pin added. Older shield boards will not have male shield pins to insert into these 'newer' socket holes but that is fine. Just be sure the shield pins align up with the boards D0 and A5 pins and all should be fine.