零零散散的积累

在作项目时,会遇到一些小问题,如今趁空余时间把这些零散的问题给罗列一下,虽然都是找度娘看各位大神的解答,可是仍是想都整理出来,一来给本身加个印象二来以便之后的运用。css

一、html

问题描述:IOS下,移动端的web页面中input获取焦点弹出系统虚拟键盘时,input框被虚拟键盘挡住了。前端

解决办法web

(1)canvas

$('input').on('click', function () {segmentfault

  var target = this;跨域

  // 使用定时器是为了让输入框上滑时更加天然浏览器

  setTimeout(function () {app

     target.scrollIntoView(true);dom

   },100);

});

(2)

$("input").on("focus", function() {
// 使用定时器是为了让输入框上滑时更加天然
var interval = setInterval(function() {
  document.body.scrollTop = document.body.scrollHeight;
  clearInterval(interval);
  }, 200);
});

二、

问题描述:让块元素的文本多行显示,显示不完的省略号代替。

解决办法:

div{

  overflow:hidden;

  text-overflow:ellipsis;

  display:-webkit-box;

  -webkit-line-clamp:2;

  -webkit-box-orient:vertical;

}

三、

问题描述:如何限制textarea仅容许纵向改变大小。

解决办法:

texterea{

  resize:vertical;   // both横向和纵向均可调整;vertical仅容许纵向的调整;horizontal仅容许横向的调整;none不可调整大小

}

四、

问题描述:在使用textarea的时候,默认前面的文字是在最下面的,须要将文字放在左上角。

解决办法:

textarea{

  vertical-align:top;

}

五、

问题描述:如何去掉在谷歌浏览器下video标签出现的下载按钮。

解决办法:

video::-internal-media-controls-download-button {
    display:none;
}
video::-webkit-media-controls-enclosure {
    overflow:hidden;
}
video::-webkit-media-controls-panel {
    width: calc(100% + 30px); 
}

六、

问题描述:float元素浮动后,高度不一致的li致使错位。

解决办法:给换行的第一个li添加clear:left样式

li:nth-of-type(odd){

  clear:left

}

这里需啰嗦一句,那个odd不行的话,我就用的even,究竟是由于什么我暂时也还不清楚,若是有人知道能够讲一哈噢。

七、

问题描述:点击某按钮后,让其事件消失即禁用。

解决办法:pointer-events的做用就是让元素实体虚化,能够实现时间的彻底禁用

a{

  pointer-events:none;

}

八、

问题描述:当页面很长,遮罩层不能彻底覆盖页面。

解决办法:用fixed,不用absolute

div{

  position:fixed;

  left:0;

  top:0;

  right:0;

  bottom:0;

  margin:auto;

  width:100%:

  height:100%;

  background:rgba(0,0,0,.5);

  z-index:9999;

}

九、

问题描述:如何让select文字居中。

解决办法:

select {

  text-align: center;

  text-align-last: center;

}

十、

问题描述:如何修改placeholder默认的样式。

解决办法:

input::-webkit-input-placeholder { /* WebKit browsers*/
  color:#999;font-size:14px;
}
input:-moz-placeholder { /* Mozilla Firefox 4 to 18*/
  color:#999;font-size:14px;
}
input::-moz-placeholder { /* Mozilla Firefox 19+*/
  color:#999;font-size:14px;
}
input:-ms-input-placeholder { /* Internet Explorer 10+*/
  color:#999;font-size:14px;
}

十一、

问题描述:在全部元素没有超过width:100%的状况下,移动端出现横向滚动条。

解决办法:出现这种状况看一下是否该页面的内容过多,内容过多致使致使页面出现纵向滚动条,占用了页面的宽度

:root {
  overflow-y: auto;
  overflow-x: hidden;
}

十二、

问题描述:根元素设置了line-height,对其内部元素产生影响,例如根元素的字体大小为100px,里面的块元素设置了高度为50px,那么块元素的高度为50px,里边的内联元素依旧是100px,会撑破块元素。

解决办法:(1)内联元素转化为块元素,不会继承根元素的内容;(2)内联元素改变行高

1三、

问题描述:解决长串英文字母自动换行。

解决办法:

div{

  word-wrap:break-word;

  word-break:break-all;

}

1四、

问题描述:select默认选中项颜色为灰色,选择后变为黑色。

解决办法:

<script>
  $(function () {

    var unSelected = "#999";
    var selected = "#333";
    $("select").css("color", unSelected);
    $("option").css("color", selected);
    $("select").change(function () {
      var selItem = $(this).val();
      if (selItem == $(this).find('option:first').val()) {
        $(this).css("color", unSelected);
      } else {
        $(this).css("color", selected);
      }
    });
  })

</script>

1五、

问题描述:解决移动端图片模糊的问题。

解决办法:图片不要用1:1比例的图,用2X的图,这样看起来就很清晰了

1六、

问题描述:实现一个文字搜索的功能,要求输入时,键盘回车按钮提示显示为“搜索”。

解决办法:input type = 'search'实现搜索框,参考连接 http://www.javashuo.com/article/p-pdzifxhu-hp.html

1七、

问题描述:使用html2canvas在前端生成图片。

解决办法:

参考连接

https://segmentfault.com/a/1190000011478657?utm_source=tag-newest

https://www.jianshu.com/p/22bd5b98e38a

需引入html2canvas.js和canvas2image.js;

// 将html绘制成图片
function convert2canvas() {
  var shareContent = $('#oCanvas')[0];//须要截图的包裹的(原生的)DOM 对象
  var width = shareContent.offsetWidth; //获取dom 宽度
  var height = shareContent.offsetHeight; //获取dom 高度
  var canvas = document.createElement("canvas"); //建立一个canvas节点
  var scale = 2; //定义任意放大倍数 支持小数
  canvas.width = width * scale; //定义canvas 宽度 * 缩放
  canvas.height = height * scale; //定义canvas高度 *缩放
  canvas.getContext("2d").scale(scale, scale); //获取context,设置scale
  var opts = {
    allowTaint: false,
    tainttest:true, //检测每张图片都已经加载完成
    scale: scale, // 添加的scale 参数
    canvas: canvas, //自定义 canvas
    logging: true, //日志开关,便于查看html2canvas的内部执行流程
    width: width, //dom 原始宽度
    height: height,
    useCORS: true, // 【重要】开启跨域配置
  };

html2canvas(shareContent, opts).then(function (canvas) {
  var context = canvas.getContext('2d');
  // 【重要】关闭抗锯齿
  context.mozImageSmoothingEnabled = false;
  context.webkitImageSmoothingEnabled = false;
  context.msImageSmoothingEnabled = false;
  context.imageSmoothingEnabled = false;

  // 【重要】默认转化的格式为png,也可设置为其余格式
  var img = Canvas2Image.convertToImage(canvas, canvas.width, canvas.height);
  console.log(img);

  $("#oCanvas").append(img);
  $(img).attr({
    'class':'canvas-img',
    "crossorigin":"anonymous"
  });
  $(img).css({
    "position":"absolute",
    "left":"0",
    "top":"0",
    "width":canvas.width / 2 + "px",
    "height":canvas.height / 2 + "px",
    "z-index":"10000"
  })

 });
}

1八、

问题描述:动画暂停和运行。

解决办法:animation-play-state属性,paused暂停;running运行

1九、

问题描述:js拼接字符串时须要加空格。

解决办法:使用\xa0,如:
var quality = result[0].foodName + ';' + '\xa0\xa0\xa0' + result[0].weight 

相关文章
相关标签/搜索