Currently, the watermark capacity of most self-recovery fragile image watermarking schemes is fixed. That means for smooth regions and texture regions, the length of watermark information is always the same. However, it is impractical since more recovery information is needed for the recovery of texture regions. In this paper, a self-recovery fragile image watermarking with variable watermark capacity is proposed. Based on the characteristic of singular value decomposition (SVD), a new block classification method is introduced. The image blocks are classified into smooth blocks and texture blocks. For smooth blocks, the average pixel values are adopted as the recovery information to recover the tampered blocks, while for texture blocks, the quantized and coded DCT coefficients are adopted as the recovery information. After encrypted by binary pseudo-random sequence, the recovery watermark of each block is embedded into its mapping block. In the detection side, the three-level detection mechanism is applied to detect and locate the tampered regions. The experimental results prove that the proposed method achieves good tamper detection results, and the recovered image has better image quality than other self-recovery fragile watermarking methods.