CSS anti-modification
May 29, 2023 am 11:02 AMAvec la popularité d'Internet et le développement de la technologie, la sécurité des sites Web fait également l'objet de plus en plus d'attention. Parmi eux, la technologie anti-modification CSS est l’un des moyens importants pour protéger la sécurité des sites Web. Cet article présentera les connaissances pertinentes sur la technologie anti-modification CSS et comment implémenter l'anti-modification CSS.
Connaissances liées à la technologie anti-modification CSS
- Qu'est-ce que CSS ?
CSS (Cascading Style Sheets) est l'abréviation de Cascading Style Sheets, qui est un langage de style utilisé pour décrire l'apparence et le style de documents tels que HTML ou XML. CSS peut séparer les styles du contenu de la page Web, ce qui rend la page Web plus facile à maintenir et à modifier.
- Le rôle du CSS
L'utilisation de la technologie CSS peut rendre les pages Web plus belles et vous pouvez également modifier facilement le style des pages Web. Par rapport au HTML, CSS présente les avantages suivants :
(1) La mise en page est plus flexible
(2) Le code est plus concis
(3) Facile à modifier et à entretenir
(4) peut grandement améliorer la vitesse de chargement des pages Web
- Principe d'anti-modification CSS #🎜 🎜#
- Utiliser CSS Sprite
- Utiliser l'encodage Base64
- Clic droit interdit
<script language="JavaScript"> function stop(){ return false; } document.oncontextmenu=stop; </script>
- (1) Ajoutez le code suivant en en-tête de la page Web et utilisez JavaScript pour crypter le code CSS :
<script type="text/javascript"> function StrEnc(str, pwd){ if(str==""||pwd=="")return""; str=escape(str); pwd=escape(pwd); if(pwd.length<4){pwd=pwd+"0000".substr(0,4-pwd.length);} var prand=new Array(); for(var i=0;i<pwd.length;i++){ prand[i]=pwd.charCodeAt(i); } var sPos=0; var str2=""; for(var i=0;i<str.length;i++){ sPos=(sPos==pwd.length)?0:sPos; var tmp=parseInt(str.charCodeAt(i)^prand[sPos++]); str2+=String.fromCharCode(tmp); } return str2; } //加密后的CSS代码 var css=document.getElementsByTagName("link"); for(var i=1;i<css.length;i++){ if(css[i].getAttribute("rel").indexOf("style")!=-1&&css[i].getAttribute("title").indexOf("notEncrypt")==-1){ var objXMLHttpRequest=new XMLHttpRequest(); objXMLHttpRequest.onreadystatechange=function(){ if (objXMLHttpRequest.readyState==4&&objXMLHttpRequest.status==200){ css[i].outerHTML="<style>"+StrEnc(objXMLHttpRequest.responseText.trim(),"key")+"</style>"; } }; objXMLHttpRequest.open("GET",css[i].getAttribute("href"),false); objXMLHttpRequest.send(null); } } </script>
<meta charset="UTF-8"> <title>notEncrypt</title>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Expliquez le concept de chargement paresseux.

Qu'est-ce que l'utilisation Effecte? Comment l'utilisez-vous pour effectuer des effets secondaires?

Comment fonctionne l'algorithme de réconciliation React?

Quelles sont les fonctions d'ordre supérieur en JavaScript, et comment peuvent-ils être utilisés pour écrire du code plus concis et réutilisable?

Comment fonctionne le currying en JavaScript et quels sont ses avantages?

Comment empêchez-vous le comportement par défaut dans les gestionnaires d'événements?

Quels sont les avantages et les inconvénients des composants contrôlés et incontrôlés?

Qu'est-ce que UseContext? Comment l'utilisez-vous pour partager l'état entre les composants?
