DIY
When tackling a stain, act quickly before it has a chance to set. Scoop up any solids with a dull-edged knife, and blot liquids with a white cloth, working from the outside in to avoid spreading. Dab the stain with cool water, or cool water and nontoxic dishwashing liquid. Sprinkle an oily stain with cornstarch and scrape up after 10 to 15 minutes, repeat as necessary, dab with water solution, and rinse. White vinegar, lemon juice, and hydrogen peroxide are all mild bleaches (test a discreet spot first) that can take care of many spots. Presoaking an item in nontoxic laundry detergent or oxygen bleach is another effective treatment.
Tips
The above instructions are primarily for washable items. Some garments labeled dry-clean only can be treated the same way, but results may vary. When in doubt, take the item to a professional (and request nontoxic techniques). Heat sets stains, so check clothes to make sure spots are gone before you put them into the dryer.

Baby powder or cornstarch will blot up most oil stains nearly completely if you use enough. You really have to thickly coat tIhe spot and rub it in well so the powder can absorb the oil. Let it sit 10-15 minutes depending on how much was spilled. Brush away well - use an old but clean terry towel scrap if you have one. I have dripped salad dressing many times and after the baby powder treatment is brushed away, there is NO TRACE of the oily stain.