若一个大的div ,里面有2个小div,第一个小div有margin-top:20px; margin-bottom:20px;,第二个小divmargin-bottom:20px; 则外面大的div...不会包含第一个小div有margin-top:20px;及第二个小divmargin-bottom:20px;若要大div包含,需要在大的div 加样式overflow:hidden,或者大div浮动
文章目录 前言 块级元素 行内元素 行内块级元素 ---- 前言 HTML中的标记 块级元素 h1-h6>>1-6级标题 p>>段落 div>>定义文档中的节 ul>>定义无序列表 ol>>定义有序列表...figcaption>>定义 figure 元素的标题 audio>>定义声音内容 video>>定义视频 nav>>定义导航链接 dl>>定义定义列表 dt>>定义定义列表中的项目 dd>...(脚注) tr>>定义表格中的行 th>>定义表格中的表头单元格 colgroup>>定义表格中供格式化的列组 col>>定义表格中一个或多个列的属性值。...行内元素 br>>定义换行 a>>定义超链接 i>>定义文字倾斜 b>>定义文字加粗 em>>定义文字倾斜,语义更加强调 abbr>>定义缩写 bdi>> 定义文本的文本方向,使其脱离其周围文本的方向设置...>>定义命令按钮 style>>定义文档的样式信息 span>>定义文档中的节 base>>定义页面中所有链接的默认地址或默认目标 行内块级元素 img>>定义图像 input>>定义输入控件
一、前言最近设计界面的时候碰到这样一个问题,我们经常可以看到这样的一个界面,告知用户的隐私条款和用户协议这样的这个底部彩色文字,而且这些彩色文字都是直接指向相应的链接图片当时最初的想法是设置多个 TextView...来实现,然而这样会有一个问题这样一个简单的功能用了5个控件,太丢人了,而且文字对齐还需要自己调整,不自然,搜索了一下,实现方式并不困难,只是没有进行一个比较好的封装,故今天带大家用kotlin的扩展函数封装一个...fun onClick(widget: View) { //具体事件 }}//第一个参数是设置点击事件的选项,第二个是colorText在parent中的位置,第二个是最后一个文字的位置...MyTextView.movementMethod = LinkMovementMethod.getInstance()MyTextView.text = style五、封装分部分讲完了,接下来就是最精彩的封装了...、colorText、colorString、点击事件的函数型参数,后来想想不对啊,在TextView中已经拥有它的上下文,直接获取完整的text即可,所以最后需要三个参数,colorText、colorString
貌似h5标记有click等事件的监听,没有show,hide等事件的监听。用了一个tab样式库,想实现切换tab时刷新页面数据,这个库也没说明招接口也不好找。...看到他是在div的class属性上面addClass("active show"),removeClass("active show"),来实现切换时的隐藏和显示的。...于是就想有没有监听class改变的方法,百度到 MutationObserver 用示例代码测试了一下,果真可以。...post 传递 dataType: 'json', // 返回数据的数据类型json contentType: "application/json; charset...但是有个问题,为啥连续触发两次啊。后来想一想难道时addClass("active show") 两个属性就触发两次,搞不懂啊。找不到原因也要解决阿。于是引入setTimeout来过滤重复请求。
前言 技术需要积累,有时间我把我之前写的还不错的组件都开源出来。并尝试vue和react 两种方式的组件封装。今天简单写下鼠标框选div选中效果的封装吧。...div框选实现 div框选效果,其实没有什么好的方法,就是获取鼠标事件,根据鼠标的位置,动态创建一个跟随鼠标的div。...【注:这种方式需要依赖position的定位方式,一般鼠标事件位置是针对全局的,所以鼠标框选的div 位置的position最好父级元素是根元素的定位。不然,鼠标框选区域和被框选区域很难保持一致。】...timedivselect' 使用例子: https://github.com/confidence68/timeDivselect/blob/master/src/App.vue 顺便说说npm发布遇到的一个小问题吧...发布 npm unpublish 包名 // 撤销删除 回到正题,我今天遇到的问题是npm: no_perms Private mode enable, only admin can publish
今天遇到一个问题,给div设置高度 height: 100%;却没有生效,在f12审查元素的时候可以看到高度字占据了半屏,并没有占据100%全屏,也就是说,div高度设置100%无效。 ?...这个问题该怎么解决? 记录一下解决办法: 找到div的父级元素,并且给父级元素手动设置一个高度,这个问题就解决了。...错误原因,根本在于没有浏览器是计算元素高度和宽度的原理: Web浏览器在计算有效宽度时会自动将页面内容平铺填满整个横向宽度。...但是浏览器根本就不计算内容的高度, 当一个元素的高度设定为百分比高度时, 无法根据获取父元素的高度,也就无法计算自己的高度。...原文作者:祈澈姑娘 技术博客:https://www.jianshu.com/u/05f416aefbe1 90后前端妹子,爱编程,爱运营,文艺与代码齐飞,魅力与智慧共存的程序媛一枚。
FIXME 在代码注释中,FIXME 是一个常见的标记,用来指出代码中的一个问题需要被修复或需进一步的工作。...代码可能是临时的解决方案,需要被更完善或更合适的实现所替代。 开发者想要在稍后回顾这部分代码,进行重构或改进。 FIXME 标记通常会伴随一段描述,解释需要修复或关注的具体问题。...开发者和团队成员可以搜索 FIXME 标记,以找到并优先处理这些已被识别的代码问题。...FIXME 类似于其他代码注释标记,如 TODO (表示还有工作要做)或 NOTE(用来强调或解释代码的某个方面),但 FIXME 更具有紧迫性,通常表示代码中存在更严重的问题或错误。...开发团队可能会有自己的注释标记约定,实际使用的标记取决于团队的偏好和工作流程。使用这些标记可以帮助团队成员快速定位代码中需要特别注意的部分。
测试下我使用的是mysql7.5的版本,JIRA是6.3.6!这是版本引起的问题! 服务器上原生的mysql驱动jar包:Mysql-connector-java-5.1.18-bin ? ?...更换服务器上JIRA\ lib内的mysql驱动包!
前言 看到网上有的文章说JIRA是使用Textile这门标记语言,有些语法和Wikitext和Markdown相像。...转义字符 有些特殊字符在JIRA中具有特殊效果,如果需要输入这些字符,需要进行转义。...,譬如上边的xml,这样写的好处是代码块可以自动使用对应语言的代码高亮,并且当代码过长时会自动生成滚动条,不至于让代码块占据页面的一大块地方。...=Bar.java|borderStyle=solid} // Some comments here public String getFoo() { return foo; } {code} 参考链接...JIRA issue 中的标记语言(Textile) Text Formatting Notation Help 警告 本文最后更新于 December 18, 2018,文中内容可能已过时,请谨慎使用
一、链接文件介绍 Linux操作系统中的“链接文件”分为硬链接(hard link)和软链接(symbolic link)。两种链接的本质区别在于inode。...以下是详细介绍: 硬链接:当系统要读取一个文件时,会先读inode信息,然后再根据inode中的信息到块领域将数据取出来。...二、两者的区别 硬链接记录的是目标的inode,软链接记录的是目标的路径。 软链接就像是快捷方式,而硬链接就像是备份。 软链接可以做跨分区的链接,而硬链接由于inode的缘故,只能在本分区中做链接。...注:上例中的du命令用来计算文件或者目录的大小,-k表示以KB为单位,这里的4,就指的是4KB;ll命令等同于 ls -l。...在上例中,删除源文件passwd后,文件大小依旧没有改变。说明硬链接文件并不会复制数据块额外占用磁盘空间。 再看硬链接的另外一个限制——不允许目录做硬链接。例: ?
关于Javascript中的问题 开发工具与关键技术: 作者:盘洪源 撰写时间:2019年1月16日星期三 在写javascript中大家可能都会遇到一个问题就是一段代码需要给重复使用,感觉很麻烦,如下图...这时我们就可以用一个函数把这段代码封装起来,然后哪里需要用就调用就行了。封装函数首先给它一个名字,在给个参数,然后里面就放入你需要用到的代码。 ?...这里需要注意的是封装函数一定要给它返回值,不然它就没办法在页面给你呈现出来,如下图 ? 正常是这样的,如下图 ? 所以千万要记住一定要写返回值
硬链接:在一个文件里面,对于目录来说,记录着文件的名字和inode号(inode 是文件元数据的一部分但其并不包含文件名,inode 号即索引节点号,是文件的唯一标识),我们也可以在多个目录里记录相同的...inode号,它们的名字不一定相同,但只要inode号一样就行,它们最终都链接到一个文件里,这就是硬链接。...也就是说,当文件的硬链接数被目录记录了一次,文件的硬链接数就增加了一次。所以,文件只要在目录里存在,它就至少有一个硬链接。...(因为引入了对目录的硬连接就有可能在目录中引入循环,在目录遍历的时候系统就会陷入无限循环当中,这样导致无法定位到访问目录) 目录的硬链接数包含目录自身的名字,以及.和子目录里的.. 791422...软连接: 软链接又称之为符号连接。软链接文件类似于Windows的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。
一、doctype声明 要使用H5标记,必须先进行如下的doctype声明,不区分大小写。Web浏览器通过判断文件开头有没有这个声明,来判断解析器和渲染类型是否切换到对应的H5模式。 另外,当使用工具时,也可以再doctype声明方式中加入system标记,不区分大小写,还可以将双引号换为单引号来使用,声明方式如下面的代码。 二、字符编码的设置 使用meta元素的新属性charset来设置字符编码 <meta charset="UTF-8"
本文目录 1 i节点 2 硬链接 3 软链接 i节点 在Linux中创建文件时,Linux会做两件事情,第一是在设备上保留一块空间存储数据,第二是创建一个i节点(i-node)存放该文件的基本信息。...i节点存放文件所需的全部文件系统信息,它通常包含: 以字节为单位的文件长度 包含该文件的设备名称 拥有者的用户标识及id 所属组的用户标识及id 文件权限 上一次修改时间 上一次访问时间 i节点的上一次修改时间...文件名、i节点和文件内容的关系示意图如下: ? 硬链接 可以使用ln命令创建一个硬链接(或者叫链接),它的特点是会有多个目录项指向同一个i节点。...通过下面的命令创建新链接: ln TARGET LINK_NAME 其中TARGET是一个已经存在的普通文件,而LINK_NAME是新链接的名称。...软链接 软链接也叫做符号链接,这种链接的特点是会新建一个全新的文件,在该文件中记录目标文件的路径。
一般链接遵循以下要求:scheme://host.domain:port/path/filename 比如W3C的网站地址为: http://www.w3school.com.cn/html/index.asp...(http 的默认端口号是 80) path - 定义服务器上的路径(如果省略,则文档必须位于网站的根目录中)。 ...实际上在网页开发中,我们用到的就是来定义超链接的路径 一、http 链接: 百度 二、本地链接: E-MAIL 最后重点说一下瞄点链接:一般是点击之后跳到网页的一个地方。...比如淘宝网站页面上的《返回到顶部》这个链接 定义锚点:… 链接点:… 当然,我们还可以到别的页面: 定义瞄点:<a
,用分隔符(这就是boundary的作用)分开,类似我们上面Content-Type中的例子。...如果传输的是文件,还要包含文件名和文件类型信息。消息主体最后以 –boundary– 标示结束。...Google 的 AngularJS 中的 Ajax 功能,默认就是提交 JSON 字符串。...一般来说,设置正确的MIME类型很重要。 简单封装 ** 在src 目录下创建一个utils 工具文件夹,创建一个request.ts 文件。...封装啦 补充封装的最佳实践 1.发送请求模块目录 图片.png 2.
设置请求的默认地址baseUrl 2. 设置请求超时时间 3. Post请求头的设置 4. 拦截器(请求拦截与响应拦截) 5....封装post, get 请求 (此示例没有封装,可根据项目情况而定,因为封装后,对于一些特殊接口设置不是太灵活,需要我们项目没有选择封装,如果请求方法比较单一的,可以考虑封装) 02 axios完整封装代码...我们可以将上面的都封装成一个文件axios.js放在util文件夹中 代码如下: import axios from 'axios' const ConfigBaseURL = 'https://localhost...error', duration: 3 * 1000 }) loadingInstance.close() return Promise.reject(error) }) 03 引用封装的文件...$axios.post 即可发起请求 疑问 baseURL写死在文件中,如果打包后,想更改地址,就有问题了,如何解决这个问题,下篇文章再讨论
我做vue和react的项目都是用的这一套api(时间戳是我新加的),接口,方法分开,便于管理。...= response.data return res }, error => { return Promise.reject(error) } ) /** * 使用es6中的类...,进行简单封装 */ class ajaxhttp { // 使用async ... await static async get (url, params) { // eslint-disable-next-line...await instance.post(url, params) } } export default ajaxhttp port.js /** * 统一定义接口,有利于维护 * 不同环境配置不同的地址.../ports' // 获取获取首页所有二级分类,和分类第一屏的内容 export const getHomeInfo = (params) => ajaxhttp.get(ports.getHomeInfo
类的封装 1、在C++中,当我们使用类的时候,我们首先要注意类的实现细节和类的使用方式(也就是说我们在做任何事情前,先要考虑好事情的大局观甚至加一些要注意的细节问题,不然一拿到一件事情,没有方向性的去做事情...2、封装的基本概念: 对于类来说,类的每一个属性并不是都对外开放的——就好比来说,女孩子不希望外人知道她的体重和年龄,男孩子不希望外人知道他的身高和实际收入一样。...最后我们要注意的是,必须在类的表示法中定义属性和行为的公开级别(类似于文件系统中文件的权限)。 3、C++中类的封装: ——成员变量:C++中用于表示属性的变量。...——成员函数:C++中用于表示类行为的函数。 ——C++中可以给成员变量和成员函数定义定义访问级别: public: 表示成员变量和成员函数可以在类的内部和外部访问和调用。...注意一点:在C++中使用strcut定义的类,类中的所有成员(成员变量和成员函数)默认为pubic(公有的,外部可以调用和访问)。
领取专属 10元无门槛券
手把手带您无忧上云