Hi jambla,
Thanks for your interest in ExpressionEngine and welcome to the Forums!
Some of your questions relate directly to ExpressionEngine, and other more toward html/css and web design/development in general.
In broad strokes, ExpressionEngine makes no assumptions about the content it delivers - so everything you know about styling webpages, etc., doesn’t change with EE. ExpressionEngine stays out of the way and lets you design and deliver your content how you need to.
1.
I would like to have main categories.
Example:
Cat1 | Cat2 | Cat3 etc…
If a user clicks on Cat2 it will bring them to the Cat2 page with a summary about Cat2 and it will show sub-menus for Cat2
Example:
Cat2:Sub-menu1 | Cat2:Sub-menu2 Cat2:Sub-menu3 etc…
This is absolutely possible out-of-the-box. ExpressionEngine has a native Category system for Channel entries and File Management. There are some great resources on Train-ee that explain how to use Categories in a navigation scenario.
2.
I would like to show code (PHP, HTML, CSS etc…) with syntax highlighting.
This is entirely up to you! You can choose the code styling CSS that best suits your site and style your content as you would on any webpage.
3.
On certain pages I would like to have comment enabled and other pages have comments disabled.
ExpressionEngine includes a commenting system, and comments can be allowed, disallowed or even set to expire after a set time on a per-entry basis.
4.
If I create an ‘example page’. I would like to have this page load without any EE template, functions etc…
...
I would like to show this code and in certain cases I would like to have a possible popup page to show the code rendered on a blank page. (Hope that makes sense)
That falls under more general web development. There isn’t anything unique to ExpressionEngine that would change the way you would implement this on a traditional “static” page.
I hope I’ve been able to clarify some of your questions! If you have anymore, feel free to ask.
I look forward to your reply!
Cheers,