I am having trouble understanding why Beryllium Oxide and Aluminum Oxide are amphoteric. Also, while they are not oxides, Aluminum and Beryllium Chloride as well.

Most of the things I have been taught or have read is that the partial covalent character of the bonds in these compounds is what allows them to be amphoteric. By not having to behave as strictly ionic allows them to be either an acid or a base depending on what type of solution they are in and what they are being reacted with. Is this correct? If so, why does the slight change in bonding contribute to the amphoteric behavior?

Covalent bonding seems to be a common theme in amphoteric substances. Why is this so?

I've been staring at reaction of Beryllium Hydroxide and Aluminum Oxide and can't grasp why they alternate between acid and base behavior, depending on what they are reacted with, and how this phenomenon is related to the electron arrangement and bonding. Can someone elucidate this in some detail?