피부에 있는 스테롤이 자외선(태양 광선)을 받으면 생긴다. 이러한 스테롤에는 동물의 대사과정에서 생기는 7-디히드로콜레스테롤과 식물성 기름에 있는 에르고스테롤 이 있다. 이 두 화합물은 태양 광선을 받으면 각각 콜레칼시페롤(비타민 D3)과 칼시페롤(에르고칼시페롤, 비타민 D2)로 전환된다. 사람의 대사과정에서는 비타민 D2와 비타민 D3가 동일한 작용을 하는 데 반해 조류의 경우에는 비타민 D2가 비타민 D3보다 그 기능이 떨어진다. 따라서 가금류의 먹이에는 비타민 D3를 첨가하는 것이 좋다.
스테롤로부터 만들어진 비타민들은 간에서 일어나는 화학반응을 거쳐, 칼슘의 대사에 참여하는 화합물로 전환된다. 일반적으로 비타민 D는 음식물에서만 섭취해야 되는 것은 아니다.
그러나 북반구의 겨울 햇살이나 특수한 유리, 구름, 도시의 오염된 공기를 통과한 태양광선에는 비타민 D를 충분히 만들 수 있는 자외선이 부족하기 때문에, 이러한 경우에는 별도의 비타민 D를 섭취해야 하는데 우유는 이를 보충하기에 좋은 식품이다. 비타민 D의 하루 권장량을 고려해보면 이 영양소는 활성이 매우 큰 비타민 중 하나이며, 성장기 아동의 경우에 단지 10㎍(400IU) 정도면 충분하다. 비타민 D가 결핍되면 구루병 이 생기나, 과량의 비타민 D는 체내에 축적되므로 지속적으로 비타민 D를 과잉섭취하면 독성 반응을 일으킬 수도 있다.→ 비타민D과잉증