The color of a fire is determined by the temperature of the fire and the chemicals that are being burned. One easy way to change the color of a fire is simply to get it to burn hotter. This can be done by blowing on the fire or using a bellows. A bunsen burner's flame is changed from blue to yellow by changing the gas-oxygen mix. The blue flame is the hot flame while the yellow flame is cooler.
The other way to change the color of th fire is to burn different chemicals. All elements burn at different temperatures and show different colors as they burn. Magnesium metal, for instance, burns with a whitelight. Don't stare at it though becauseit burns so brightly that it can scorch your eyeballs! Magnesium, potassium and titanium, all elemental metals, are commonly used in fireworks to produce bright white lights.
If you want to make a fire change colour then the best way is to put metallic salts on the fire. Sodium chloride, for instance, burns a bright yellow-orange. Sodium chloride is plaintable salt so it is the easiest metallic salt to get. Other metallic salts that will change the color of a fire include potassium chloride or potassium permanganate (Condy's Crystals), which burn violet, magnesium sulfate (epsom salts), which burns white. and copper chloride or copper sulfate which burn blue. Calcium salts burn orange. Salts are made up of a metal and a nonmetal. In each case, it is the metal that provides the color when the salt is burned. That is why both copper chloride and copper sulfate burn blue.
Other metallic salts produce some outstanding colors but can be hard to obtain. Salts of strontium and lithium burn red, while barium compounds burn green. Purples can be obtained by burning combinations of strontium (red) and copper (blue) compounds. All of these are used in fireworks. this website, http://chemistry.about.com/od/funfireprojects/a/greenfire.htm, gives a simple recipe for making green flames from Heet antifreeze and boric acid.
Rather than just throwing the chemicals on the fire, you can dissolve them in water, soak sawdust in the water and then dry the sawdust, which should then burn in the color of the particular chemical that was added to the sawdust. Only add one chemical to each batch of sawdust though. If you mix the chemicals, you will end up with an orange flame rather than a multicoloured flame. Sodium in particular will overwhelm most other colors.
Another method of changing the color of fire is pretty hit and miss but can create some lovely colors. Go through a stack of old magazines and newspapers and burn the colored pages. The dyes in the pages will burn in different colors.
If you are experimenting with chemicals and fire, please be careful. Start your fire on a heat-safe surface. Wear safety glasses and only put small amounts of the chemicals in the fire. Do not throw petrol or other flammable liquids in the fire, as these can backflash and cause horrific burns. Carry out the experiments outside or in a well ventilated room so you don't breathe the smoke or fumes which may be toxic. Children should be supervised whenever there is an open fire.