html代码隐藏的方法是什么
这篇文章主要讲解了“html代码隐藏的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“html代码隐藏的方法是什么”吧!
一、使用CSS隐藏HTML代码
CSS中有一个很有用的属性display,它可以将HTML代码隐藏。使用该属性时,我们可以利用display:none、visibility:hidden、opacity:0、position:absolute + left:-9999px(左移9999像素)等方式来实现HTML代码的隐藏。
display:none
display:none是最常用的隐藏HTML的一种方法,它可以将元素影藏,这样就可以将HTML代码隐藏起来不被用户看到。设置元素的display属性值为none,就可以将该元素隐藏。
.hide { display: none;}
visibility:hidden
visibility:hidden可以将HTML元素隐藏,它与display:none的效果类似,不同的是,元素在原始位置仍保持留着(空间未被释放),按照原来的大小进行占位,只是不可见。
.hide { visibility: hidden;}
opacity:0
opacity:0是滤镜属性,用于设置元素可见性的透明度。设置为0的元素被设置为完全透明呈现出来,不会被用户看到。与visibility:hidden不同的是,在原位上会被保留空间。
.hide { opacity: 0;}
position:absolute + left:-9999px
position:absolute定位属性可以将元素的位置彻底左移,配合left:-9999px的属性值,可以将元素隐藏得很彻底。
.hide { position: absolute; left: -9999px;}
二、使用JavaScript隐藏HTML代码
JS隐藏HTML代码的方法相对于CSS,稍微复杂一些,需要通过JS API来实现。比如我们可以使用DOM来操作文档中的元素,通过setAttribute和style属性来实现代码的隐藏。代码如下:
<div id="hide">需要隐藏的内容</div><script>var hide = document.getElementById('hide');hide.setAttribute('style', 'display:none'); </script>
以上代码的作用是选中id为hide的元素,并将该元素的style属性设置为display:none,即让该元素在页面上消失。
三、HTML代码的加密与混淆
除了上述的方法外,还有一种更安全的方式,那就是将HTML代码加密,从而达到更加安全的目的。
BASE64加密
将HTML代码进行Base64加密,可以达到较高的保密性。Base64加密后的字符串可以用于URL和HTTP POST参数等通信协议中传输,并不需要考虑长度限制的问题。通过将加密后的字符串转成字符编码格式,就可以将其正确输出到HTML中,从而使得HTML中的代码隐藏。
var str = document.getElementById('demo').innerHTML;//加密var base64 = btoa(str);//解密var origin = atob(base64);document.getElementById('demo').innerHTML = origin;
JS代码混淆
JS代码混淆是指通过一些手段,将JS代码的易读性变得更差,增加被人破解的难度。混淆一般包括函数名重命名、变量重命名、省略空格及注释等。混淆可以防止黑客通过分析JS源码来找到漏洞和攻击代码,从而增加页面的安全性。
function hide() { var a = document.createElement('style'); a.innerHTML = '.hide { display:none; }'; document.head.appendChild(a);}hide();
感谢各位的阅读,以上就是“html代码隐藏的方法是什么”的内容了,经过本文的学习后,相信大家对html代码隐藏的方法是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341