zoukankan      html  css  js  c++  java
  • text样式

    text-stroke(文本描边)和text-fill-color(文本填充色)注意点:
    1. 目前这两个属性只有webkit内核的Safari和Chrome支持,例如: -webkit-text-stroke: 3.3px #2A75BF;
    2. text-fill-color:颜色值,和color属性差不多都是文字的样式;
    3. 同时使用text-fill-color和color属性,text-fill-color将覆盖color属性的颜色值;
    4. text-fill-color可以使用透明值,即:text-fill-color:transparent
    5. <!DOCTYPE html>
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
          <title></title>
          <style>
              #box
              { line-height:150px; text-align:center; font-size:100px; font-family:'Microsoft YaHei'; white-space:normal; font-weight:bold;
              }
              p
              {
                  margin:0; position:relative; height:150px;
              }
                  p.p1
                  {
                      color:#fff; text-shadow:0 0 1px #666,2px 2px 10px #999; /*效果叠加*/
                  }
                  p.p2
                  {color:#ff6699; text-shadow:8px 8px 1px #fdc9c9; -webkit-text-stroke:3px #fff;}
                  p.p3
                  {color:#a0a0a0; text-shadow:8px 8px 1px #d3d3d3; -webkit-text-stroke:3px #fff;}
                  p.p4
                  {color:rgba(255,255,255,0.1); text-shadow:2px 2px 50px #ffcda1; -webkit-text-stroke:3px #ffcda1; background:url(Images/img.png) no-repeat center -120px; -webkit-background-clip:text; }
          </style>
          <script>
              window.onload = function () {
                  var aSpan = document.getElementById("box").getElementsByTagName("span");
                  var aP = document.getElementById("box").getElementsByTagName("p");
                  var aArr = []; //按显示顺序存放span文字数组;
      
                  for (var i = 0; i < aP.length; i++) {
                      var aSpans = aP[i].getElementsByTagName("span"); //获取每行的span
                      if (i % 2) { //如果是单行,1.3.5...则从最后一个字开始存放; 
                          for (var j = aSpans.length - 1; j >= 0; j--) {
                              aArr.push(aSpans[j]);
                              aSpans[j].style.left = aSpans[j].offsetTop + "px";
                              aSpans[j].style.left = aSpans[j].offsetLeft + "px";  //给每个文字定位,确定每个文字显示的绝对位置
                          }
                      }
                      else {  //如是双行,0.2.4...则按顺序存放;
                          for (var j = 0; j < aSpans.length; j++) {
                              aArr.push(aSpans[j]);
                              aSpans[j].style.left = aSpans[j].offsetTop + "px";
                              aSpans[j].style.left = aSpans[j].offsetLeft + "px"; //定位
                          }
                      }
                  }
      
                  //将所有span设为绝对定位,缩小为0%;
                  for (var i = 0; i < aSpan.length; i++) {
                      aSpan[i].style.position = "absolute";
                      aSpan[i].style["WebkitTransform"] = "scale(0)";
                  }
      
                  //开始逐个显示文字
                  for (var i = 0; i < aArr.length; i++) {
                      starMove(aArr[i], 100, i) //参数分别为:需显示的对象数组,目标值即实际字体大小,当前文字显示的索引号
                  }
              };
      
              //参数分别为:需显示的对象数组,文字大小,当前文字显示的索引号
              function starMove(obj, target, i) {
                  obj.iNub = 0; //当前值
                  obj.iSpeed = 0; //速度
                  obj.timer = setTimeout(function () {
                      clearTimeout(obj.timer);
                      obj.timer = setInterval(function () {
                          domove(obj, target);
                      },14) //单个文字以0.014秒的频率由小变大的显示出,;
                  }, (i * 200 + 200)); //(i * 200 + 100)为每个文字显示延时时间;
              }
      
              //参数分别为:需显示的对象数组,文字大小目标值
              function domove(obj, target) {
                  obj.iSpeed += (target - obj.iNub) / 16; //+(100-0)/16 显示速度越来越快; 
                  
                  obj.iSpeed *= 0.91;
                  if (obj.iNub == target && Math.abs(obj.iSpeed) < 4) {  //速度小到4或目标值等于预设值时
                      clearInterval(obj.timer); //停止晃动
                  }
                  else {
                      obj.iNub += obj.iSpeed;
                     // alert(obj.iNub)
                      obj.style["WebkitTransform"] = "scale(" + (obj.iNub / 100) + ")";
                  }
      
      
      
              }
          </script>
      </head>
      <body>
          <div id="box">
              <p class="p1"><span></span><span></span><span></span><span></span></p>
              <p class="p2"><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span></p>
              <p class="p3"><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span></p>
              <p class="p4"><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span></p>
          </div>
      </body>
      </html>
  • 相关阅读:
    Linux 如何改变文件属性与权限: chgrp, chown, chmod
    Linux 路径与命令搜寻顺序
    Log level with log4j and Spark
    java.lang.IllegalStateException: availableProcessors is already set to [4], rejecting [4]
    max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
    JavaScript Promise异步实现章节的下载显示
    npm-folders
    the user operation is waiting for building workspace to complete解决办法
    Eclipse,新建web项目后 出现jax-ws webservice
    ServletContext在tomcat启动的时候创建
  • 原文地址:https://www.cnblogs.com/aimyfly/p/3154177.html
Copyright © 2011-2022 走看看