The word “hosting” doesn't describe just one service, but a set of services that provide a variety of functions to a domain. Having a site and e-mails, as an illustration, are two independent services though in the general case they come together, so a lot of people think of them as one single service. In fact, every single domain has a several DNS records called A and MX, which show the server that handles each particular service - the former is a numeric IP address, which specifies where the site for the domain address is loaded from, while the second one is an alphanumeric string, which shows the server that manages the emails for the domain name. For instance, an A record would be 220.127.116.11 and an MX record would be mx1.domain.com. Every time you open a site or send an e-mail, the global DNS servers are contacted to check the name servers that a domain name has and the traffic/message is first forwarded to that company. If you have custom records on their end, the web browser request or the email will be directed to the correct server. The idea behind employing separate records is that the two services work with different web protocols and you can have your website hosted by one service provider and the emails by another.