We are having static website. We would like to integrate our website with CDN like Microsoft Azure, Akamai or Cloudflare. Is it possible to serve Sitecore content pages from CDN or only we can serve Media items from CDN?
You could serve your content pages from any CDN which supports serving html.
Question is, do you want to do this and why?
Let's just think about 1 thing: Your client bought Sitecore, not wordpress. They most probably want to personalize, content test, use marketing tools. Will any of that be possible with pages being served from CDN? How can content be personalized if Sitecore is not hit with any request, except from the very first one which was used to generate the first html stored in CDN? It can't. And analytics? And content testing? They won't work.
Yes, sure. You can serve html from CDN. But if you want to do this, don't waste your money on Sitecore licenses.
Actually a product exists which supports to serve HTML from CDN (currently Netlify Edge) for Sitecore. It's called Uniform for Sitecore available here: https://uniform.dev/sitecore-netlify-stack. Here is the an image how it works, stolen from the website.
Sitecore recommends caching only the media items in CDN. There is a CDN.config available within App_Config\Include\Examples folder to enable CDN for a Sitecore application. If you still want to cache your static pages in CDN, make sure that you filter out the pages on which personalization is implemented using the regex in the caching rules in CDN.