Well companies aren't required by law to give members free web hosting, so it differers which each company. Most ISPs do give you a decent amount of emails and webspace, those that don't might charge a small fee. All people have to do is shop around a little. For hosting photos only
www.PhotoBucket.com is great. It's free and you get lots of space.
Adelphia (highspeed) & Earthlink give you ample emails and 10mb disk space. But even many dirt cheap dialup ISPs like 650DialUp ($6.50 /mo) give you 10MB & 5 emails. Access4Cheap ($6.95 /mo) gives you 10MB & 2 emails.
Personally I think it pays just to buy web space. A few years ago I believe I paid $60 up front for 2 years of webspace service. For my money I got 100MB disk space, my own domain name, unlimited emails, tons of subdomains, tons of website tools, and various scripts. At the end of my term I told them I was going to look for another host and they gave me 3 more months free to try and keep me. Already in the 4th month and my site
www.danielenetwork.com is still up (i think?) lol.
Today searching google I see dirt cheap hosting for $1.99 a month (or $21.50 a year) and offering 400MB disk space, 10GB bandwidth, unlimited subdomains, unlimited emails, unlimited ftp, cgi scripts, shopping cart, and other website tools. That's with ShieldHost.com, I never used or heard of them but that sounds like a sweet deal to me and the only thing missing is a domain name. Domain names usually cost $8 a year. So even a highschool kid with no job can afford that, just use your lunch money. lol.