首页 > 其他分享 >HTML 全屏水印 vue 全屏水印

HTML 全屏水印 vue 全屏水印

时间:2023-08-12 13:44:05浏览次数:27  
标签:style watermark mask 水印 HTML 全屏 div defaultSettings

HTML 全屏水印 vue 全屏水印

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>水印</title>
    <style>
        #water-div{pointer-events:none;position:fixed;top:0;left:0;right:0;bottom:0;}
        .mask_div{pointer-events:none;}
    </style>
</head>
<body>
<div style="text-align:center;">
    <div>页面水印效果展现</div>
    <div>页面水印效果展现</div>
    <div>页面水印效果展现</div>
    <div>页面水印效果展现</div>
    <div>页面水印效果展现</div>
    <div>页面水印效果展现</div>
    <div>页面水印效果展现</div>
    <div>页面水印效果展现</div>
    <div>页面水印效果展现</div>
</div>
 
<div id="water-div"></div>
<script>

    var txt = "水印内容<br>warter";
    watermark(txt);
        
    //监听窗口变动
    window.onresize = function() {
        watermark(txt);
    }
    
    function watermark(txt) {
        //初始设置水印容器高度
        var water = document.getElementById("water-div");
        water.innerHTML = "";
        water.style.height = window.screen.availHeight + "px";
        water.style.height = document.documentElement.clientHeight + "px";
        //水印样式默认设置
        var defaultSettings={
            watermark_txt:txt,
            watermark_x:20,//水印起始位置x轴坐标
            watermark_y:20,//水印起始位置Y轴坐标
            watermark_rows:2000,//水印行数
            watermark_cols:2000,//水印列数
            watermark_x_space:70,//水印x轴间隔
            watermark_y_space:30,//水印y轴间隔
            watermark_color:'#aaaaaa',//水印字体颜色
            watermark_alpha:0.4,//水印透明度
            watermark_fontsize:'15px',//水印字体大小
            watermark_font:'微软雅黑',//水印字体
            watermark_width:210,//水印宽度
            watermark_height:80,//水印长度
            watermark_angle:15//水印倾斜度数
        };
 
        //获取页面最大宽度
        var page_width = Math.max(water.scrollWidth,water.clientWidth);
        //获取页面最大高度
        var page_height = Math.max(water.scrollHeight,water.clientHeight);
        // console.log( page_height)
 
        //水印数量自适应元素区域尺寸
        defaultSettings.watermark_cols=Math.ceil(page_width/(defaultSettings.watermark_x_space+defaultSettings.watermark_width));
        defaultSettings.watermark_rows=Math.ceil(page_height/(defaultSettings.watermark_y_space+defaultSettings.watermark_height));
        var x;
        var y;
        for (var i = 0; i < defaultSettings.watermark_rows; i++) {
            y = defaultSettings.watermark_y + (defaultSettings.watermark_y_space + defaultSettings.watermark_height) * i;
            for (var j = 0; j < defaultSettings.watermark_cols; j++) {
                x = defaultSettings.watermark_x + (defaultSettings.watermark_width + defaultSettings.watermark_x_space) * j;
                var mask_div = document.createElement('div');
                //mask_div.id = 'mask_div' + i + j;
                mask_div.className = 'mask_div';
                //mask_div.appendChild(document.createTextNode(defaultSettings.watermark_txt));
                mask_div.innerHTML=(defaultSettings.watermark_txt);
                //设置水印div倾斜显示
                mask_div.style.webkitTransform = "rotate(-" + defaultSettings.watermark_angle + "deg)";
                mask_div.style.MozTransform = "rotate(-" + defaultSettings.watermark_angle + "deg)";
                mask_div.style.msTransform = "rotate(-" + defaultSettings.watermark_angle + "deg)";
                mask_div.style.OTransform = "rotate(-" + defaultSettings.watermark_angle + "deg)";
                mask_div.style.transform = "rotate(-" + defaultSettings.watermark_angle + "deg)";
                mask_div.style.visibility = "";
                mask_div.style.position = "absolute";
                mask_div.style.left = x + 'px';
                mask_div.style.top = y + 'px';
                mask_div.style.overflow = "hidden";
                mask_div.style.zIndex = "9999";
                mask_div.style.pointerEvents='none';//pointer-events:none 让水印不遮挡页面的点击事件
                //mask_div.style.border="solid #eee 1px";//兼容IE9以下的透明度设置  mask_div.style.filter="alpha(opacity=50)";
                mask_div.style.opacity = defaultSettings.watermark_alpha;
                mask_div.style.fontSize = defaultSettings.watermark_fontsize;
                mask_div.style.fontFamily = defaultSettings.watermark_font;
                mask_div.style.color = defaultSettings.watermark_color;
                mask_div.style.textAlign = "center";
                mask_div.style.width = defaultSettings.watermark_width + 'px';
                mask_div.style.height = defaultSettings.watermark_height + 'px';
                mask_div.style.display = "block";
                water.appendChild(mask_div);
            }
        }
    }  
</script>
</body>
</html>

 

标签:style,watermark,mask,水印,HTML,全屏,div,defaultSettings
From: https://www.cnblogs.com/fmj521/p/17624718.html

相关文章

  • spire.pdf导出图片,只能导出11张图片,而且带有水印
    ///<summary>///有水印///</summary>///<paramname="pdfUrl">pdf文件路径</param>///<paramname="imagePath">输出图片路径</param>publicstaticvoidSpirePdfToImage(string......
  • AI 一键去水印:教你无限量使用商业图片的技巧
    场景再现刚开始注册账号(啥账号具体不表了,小编不喜欢的那个),想弄个闪亮,好看,有个性化的Logo。作为一名非专美工小白人员,网上翻了很久作图工具,要么就是不好用,好用的大部分都收费。最后没办法,找到一个相对来说用起来顺手而收费的网站。如下是我用该网站自行设计的一个Logo。没错,正如......
  • emmet快速生成html标签和css样式
    emmet快速生成html标签语法1.生成标签,直接输入标签名,按下tab键即可;2.生成多个相同标签,加上即可,如生成3个div标签,div3;3.生成父子级的标签,使用>号,如ul>li;4.生成兄弟标签,使用+号,如div+p;5.生成带有类名或者id名的标签,直接写.demo或者#id按下tab键即可;6.如果生成的div类名是......
  • 让Webbrowser、CDHtmlDialog中的控件显示为系统主题样式
    方法1:在HTML文件里加上如下代码<METAHTTP-EQUIV="MSThemeCompatible"CONTENT="Yes">方法3:在以CDHtmlDialog类为基类的头文件中加入如下代码(推荐)classCWebBrowserThemeDlg:publicCDHtmlDialog{STDMETHOD(GetHostInfo)(DOCHOSTUIINFO*pInfo){pInfo->dwFlags|......
  • 认识HTML
    HTML(超文本标记语言)是一种用于创建网页结构和内容的标记语言。它由一系列的标签组成,每个标签都包含了不同的元素和属性,用于定义文档的结构和样式。在下面的文章中,我们将探讨HTML的一些基本概念和用法。一、认识HTMLHTML是一种被广泛应用于互联网的标记语言,它使用一系列的标签来定......
  • 基于HTML5的ssm框架果蔬经营平台
    系统设计目标果蔬经营平台主要是为了用户方便查看商品信息,也是为了更好的让管理员进行更好存储所有数据信息及快速方便的检索功能,对系统的各个模块是通过许多今天的发达系统做出合理的分析来确定考虑用户的可操作性,遵循开发的系统优化的原则,经过全面的调查和研究。系统所要实现的功......
  • Asp.Net Core 之 @Html.Action 迁移
    想必只要接触了netcore的小伙伴们已经发现@html.Action()方法官方已经不提供支持了,转而使用 ViewComponents替代了,同时也增加了TagHelper。但是如果想用以前的@Html.Action()方法,我们其实可以自己动手去实现它。下面就开始实现之旅吧!1、创建静态类 HtmlHelperViewExt......
  • 【JavaScript36】HTML DOM创建/插入/删除/替换元素
    createElement创建元素document.createElement()可以创建一个元素document.createTextNode()创建一个文本节点appendChild()方法可向节点的子节点列表的末尾添加新的子节点。<divid="demo"><pid="p1">这是文本内容</p></div><script>//div下添加一个子元......
  • 【JavaScript35】innerText 和 innerHTML
    获取内容时innerHTML从对象的起始位置到终止位置的全部内容,还包括HTML标签。innerText会去掉标签的内容。innerText和innerHTML获取内容示例<divid="demo"><pid="p1"><strong>这是文本内容</strong></p>helloworld!</div><script>......
  • HTMLParser(一个比较流行的html代码解析、处理开源项目)学习,总结
    主页:http://htmlparser.sourceforge.net/ HtmlParser初步研究bylostfire这两天准备做一些网站编程的工作,于是对HtmlParse小研究了一下,目的是快速入手,而不是深入研究,做了一下整理,和大家共同讨论一下。一,数据组织分析:HtmlParser主要靠Node、AbstractNode和Tag来表达Html,因为Remar......