零零散散的积累

在做项目时,会遇到一些小问题,现在趁空余时间把这些零散的问题给罗列一下,虽然都是找度娘看各位大神的解答,但是还是想都整理出来,一来给自己加个印象二来以便以后的运用。

1、

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

解决办法

(1)

$(‘input‘).on(‘click‘, function () {

  var target = this;

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

  setTimeout(function () {

     target.scrollIntoView(true);

   },100);

});

(2)

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

2、

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

解决办法:

div{

  overflow:hidden;

  text-overflow:ellipsis;

  display:-webkit-box;

  -webkit-line-clamp:2;

  -webkit-box-orient:vertical;

}

3、

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

解决办法:

texterea{

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

}

4、

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

解决办法:

textarea{

  vertical-align:top;

}

5、

问题描述:如何去掉在谷歌浏览器下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);
}

6、

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

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

li:nth-of-type(odd){

  clear:left

}

这里需啰嗦一句,那个odd不行的话,我就用的even,到底是因为什么我暂时也还不清楚,如果有人知道可以讲一哈噢。

7、

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

解决办法:pointer-events的作用就是让元素实体虚化,可以实现时间的完全禁用

a{

  pointer-events:none;

}

8、

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

解决办法:用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;

}

9、

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

解决办法:

select {

  text-align: center;

  text-align-last: center;

}

10、

问题描述:如何修改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;
}

11、

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

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

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

12、

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

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

13、

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

解决办法:

div{

  word-wrap:break-word;

  word-break:break-all;

}

14、

问题描述: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>

15、

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

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

16、

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

解决办法:input type = ‘search‘实现搜索框,参考链接 https://segmentfault.com/a/1190000007765742

17、

问题描述:使用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"
  })

 });
}

18、

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

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

原文地址:https://www.cnblogs.com/congke/p/10120629.html

时间: 2024-11-01 16:57:06

零零散散的积累的相关文章

数据仓库概念

数据仓库可以算是数据产品必须要了解的技术知识了, 在一年前的数据产品求职分析中,其中技能要求这一项中,数据仓库可是占了一席之地的. 但是,对于准备求职数据产品的童鞋来说,可能身边没有做数仓开发的朋友可以请教.自学吧,而那几本经典书籍里面又过于理论,看起真是生不如死,而且数据产品并不是数据开发,可能了解一些入门的常识,有个大概的概念就可以了. 我也一直零零散散的积累这方面的知识,这两天梳理了下,形成下文,希望对大家有所帮助,非专业数仓开发人员,如有不准确的地方,还望大家指正. 文章结构 一.数据仓

面试提高及日常学习积累(二)——数据库篇

这一篇主要讲mysql的一些积累和学习体会. 一:数据库基础知识 Innodb引擎 Innodb引擎提供了对数据库ACID事务的支持,并且实现了SQL标准的四种隔离级别,关于数据库事务与其隔离级别的内容请见数据库事务与其隔离级别这篇文章.该引擎还提供了行级锁和外键约束,它的设计目标是处理大容量数据库系统,它本身其实就是基于MySQL后台的完整数据库系统,MySQL运行时Innodb会在内存中建立缓冲池,用于缓冲数据和索引.但是该引擎不支持FULLTEXT类型的索引,而且它没有保存表的行数,当SE

Nginx+Lua 积累

Nginx+Lua 积累 1.解析16进制编码的中文参数 复制代码 local encodeStr = "%E6%B0%94" local decodeStr = ""; for i = 2, #encodeStr - 1, 3 do local num = encodeStr:sub(i, i + 1); num = tonumber(num, 16); decodeStr = decodeStr .. string.char(num); end ngx.say(

java工程积累——前台页面的统一校验

在项目中,我们面临这样的问题,就是如果在前台做抽象,大家想想后台代码的抽象,我们耳熟能详,但是前台的抽象,我们是如何做的呢?恐怕这个问题,如果是第一次抛给自己,自己也很惶恐,就是,我们不是对应一个业务写好一个页面吗?以前从来没有想过抽象,这里,我就要说,那是咱们最初级的方式,今天带大家一起见证先比较靠谱一种方式! 回顾 我们回顾下html编码的历程,在web1.0时代,我们面向的大多是静态页面,这时候,能够展示出来就好,由于网速的限制,电脑处理能力的约束,我们只能把什么都写在一起,但是随着时间的

7月10日到7月15日技术积累要点

总结过去一周技术积累要点: Environment.NewLine(换行): string.Concat()的时间复杂度低于+=: 单元测试的规则: 创建日志的规则(LoggerFactory.CreateLog): IDE工具调试改值的技巧升级: Json序列化和反序列化使用升级: Mapper.CreateMap()的使用升级: string.Split()的使用升级: float.TryParse()的使用升级: float.Parse()的使用升级: WCF服务的使用开发流程: 调试技巧

人的提升不是直线上升的,也不是一直弧线上升的(人之所以有文明就是因为不断的学习和积累好的东西)

正确的积累经验: 在实际工作中,要学习好的习惯,虽然你现在并不赞同,但是你要学习,并一直保持下去,因为人之所以有文明就是因为不断的学习和积累好的东西. 不要盲目赞同别人,要先思考,要有自己的立场. 不要高看自己,要虚心,要谦虚,要多听别人说,多学习别人的优秀的地方. 更快的提升能力: 不走弯路,就是最好的捷径. 过程: 人的提升不是直线上升的,也不是一直弧线上升的,而是像正弦波一样有高有低,慢慢提升. http://blog.csdn.net/songjinshi/article/details

算法积累(字符串转换驼峰,判断一个字符串中那个字母出现次数最多,并且出现了几次)

因为算法比较烂,所以想做一下这方面的积累. 尽量能够每天学习一个新算法吧.(不过估计很悬) 好吧,今天第一个是字符串转换驼峰 直接上代码 var str = 'toupper-case'; var arr = str.split('-'); //toupper,case for (var i = 1; i < arr.length; i++) { //把除了第一个数组后面的数组的第一个值设置为大写然后大写字母和去掉第一个字符的剩下的字符进行拼合 arr[i] = arr[i].charAt(0)

算法积累:解决如何获取文本的行数

一开始对于这个问题,我的思路就回荡在:1字符串子字符串的判断 2循环直到结束的想法 3将原来是"\n"替换掉之类的想法 一个问题总会有多种解决方案,下面的解决方案来自MJ基础视频里讲过的方案,挺不错的,基本思路是:通过"\n"拆分字符串到OC数组中,最后判断数组的长度即可. 虽然有时候我们可能想不到更好的方法,但是也不能阻拦我们去积累好的方法,所以纪录在此博文中. 学习来自

开放的智力10:常识积累

如何在三个月内科学高效地积累常识? 先讲讲自己的故事吧.我对心理学的认识发生过翻天覆地的变化.几年以前,我和所有的心理学研究生一样,一天到晚埋头看文献,钻在一个窄小的知识领域做着与世隔绝的认知心理学研究,满脑子想的就是如何发 paper.心理学有什么用,不是我关心的:或者,让我自豪的就是,心理学是无用之学,正如很多人骄傲地说「数学是无用之学」.「物理是无用之学」.「哲学是无用之学」一样.后来,我在网络上相继了解到了三个人,虽然他们都不是心理学科班,但是对心理学的认识和领悟却让我震撼,让我这个所谓