Es geht schlicht und einfach nicht. Finde dich damit ab. Alles was im Browser landet (und das muss es zwangsläufig) kann abgefangen werden. Wenn du es über JS löst, kann man im Browser JS abschalten und kommt trotzdem ran. Zur Not verwendet man wget, wenn man es wirklich drauf ankommen lassen will.
- Du kannst HTML nicht vor Zugriff schützen
- Du kannst JS nicht vor Zugriff schützen
- Du kannst CSS nicht vor Zugriff schützen
- Du kannst versuchen, alles zu chiffrieren, so das es nicht so einfach wird, ran zu kommen; das verhindert aber nicht die Möglichkeit, ran zu kommen.
HTML, CSS und JS wurden nicht für Closed-Source konzipiert - und das ist auch gut so.