Sometimes your dog may not eat enough one night and the next morning it will throw up yellow or white foam
. Then they will also puke if they eat too much, it is a delicate balance. Allergies can also be the cause. Allergies are another thing that they are sensitive towards, when my allergies act up, I take a Claritin before bed, and the dog gets half a Benadryl tablet (about 10mg).
One last thing, Shih Tzu are, again, sensitive dogs. This time I am talking of their feelings.