You can get breathtaking templates on these websites, even i have used some of them:
1.http://www.mashup-template.com/ (It may show you this site is not secure but
it's secure, it just doesn't have SSL security and that is only needed for
transactions you can read more here :
https://www.cloudflare.com/en-in/learning/ssl/what-is-ssl/)
2.https://www.creative-tim.com/templates (This site too has quite good templates
. Some are paid but worth you can use for free too.)
3.https://mailchimp.com/landers/templates/?gclid=Cj0KCQiAnaeNBhCUARIsABEee8WRftr_njLdPfm0AsLfyLPvDSaqQAxSBjiUqcBvFiC-7NDy9_aOu9saApv7EALw_wcB&gclsrc=aw.ds
You can get good templates here as well as you can use this site to host your own
website too.
For a beginnner, its okay not to know, that's how we all learn. Remember, we were all beginners at some point.
Get yourself a free template from sites like templemo, break and play around with it. Try figuring out what does what.
When stuck, copy the line and paste it on google search box, let google do the trick for you.
Make good use of Bootstrap. It'll make your work eeasier.
Find ideas by looking at other peoples portfolio and start by building something
easy and minimalistic.
Next, try to put some fabulous animations, transitions or interactions.
Lots of coder upload their portfolio in GitHub and host it with username.github.io
Generate idea by simulating some of those projects and then gets your own
First of all clear all basics of html, css and js like in css learn flex and media query for responsive same with thml and js. Then search for other's portfolio and choose the best and then start work on your porfolio.