line-height

动态生成DOM元素的高度及行数获取与计算方法

流过昼夜 提交于 2020-04-06 10:03:08
背景 在开发IM的项目过程中,经常会有出现一些需要计算DOM高度,然后超出若干行隐藏等需求。很多时候,需要计算高度的DOM元素都是动态生成的,我们无法在数据渲染前获取到它的高度。 但是,如果我们需要获取到这段在内存中未渲染的动态文本,也能够通过如下几个方法。 技术方案 根据前端的基本常识,在内存中未渲染的DOM元素是无法获取到高度的,因此我们有两个方向来解决这个难题: 通过字数对行数进行估算 将元素渲染后进行高度测算 实现方案 以下的实现方案将根据上面所选择的技术方案来进行实现。 通过字数进行估算 方案 此方案无需多言,就是通过字数和每一行能够容下的字的个数进行估算等。在项目最开始时,我采用的就是这个方案。具体实现代码太过简单,因此也不在此添加了。 优点 此方案实现简单,基本不需要任何成本,适用于只有等宽文字的情况下。 缺点 这个方案缺点也比较明显,基本无法用于纯文本之外的任何情况。如果字体为非等宽字体或者存在 \n 之类的换行符或者是 \t 之类的制表符时,估算的准确度也会大大下降。 在DOM渲染后进行操作 方案 顾名思义,此方案就是先不考虑DOM元素行数逻辑,直接将所有的DOM节点全部渲染到页面中,渲染完成后再对进行后续逻辑判断。获取高度后页面行数计算将在后面统一讲解。 优点 此方案通过直接在实际场景的页面上渲染后进行高度计算,因此计算精准,不存在任何偏差。同时

Is line-height: 1.4 the same as line-height: 140%?

时光总嘲笑我的痴心妄想 提交于 2020-04-06 03:44:09
问题 Is using a line-height value of 1.4 the same as using a line-height value of 140%? In other words, can we consider unitless value the same as percentage value? 回答1: There are not exactly 1 the same because of inheritance, here is a trivial example. .box { display: inline-block; border: 1px solid green; } .box > span { font-size: 50px; border: 1px solid red; } .box > span > span{ font-size: 50%; border: 1px solid red; } <div class="box"> <span style="line-height:1.8;"><span>some text here<

web前端入门到实战:css选择器和css文本样式相关

荒凉一梦 提交于 2020-04-02 22:00:10
【文章来源微信公众号:每天学编程】--- 关注,后台领取编程资源 css基础-css选择器和css文本样式相关: 使用link链入外部样式,页面加载时会同时加载样式 @import url(“*.css”);使用导入式,页面加载完后,才会加载样式 链接伪类的顺序 :link-> :visited ->:hover-> :active 或者 : visited -> : link ->:hover-> :active 选择器的优先级: id选择器>class选择器>标签选择器 如果设置了同样的类样式,类样式与元素里类的顺序没有关系,取决于哪个样式离需要引用样式的元素最近就用哪个,所以div里的文字颜色是“橘色“ 选择器权值: 标签选择器:1 类和伪类选择器:10 id选择器:100 通配符选择器:0 行内样式:1000 !important:优先级最最高 权值不同时,根据权值判断样式;权值相同时,根据就近原则判断样式 常用选择器: input:focus p:first-letter p元素的首字母 p:first-line p元素的首行 serif字体和sans-serif字体的区别: sans-serif有修饰 sans-serif无修饰 font-style:normal/italic/oblique 正常 斜体 倾斜 font简写顺序: font-style font

CSS浏览器兼容问题

♀尐吖头ヾ 提交于 2020-03-30 18:32:32
1. IE6 下双倍浮动问题,display: inline 因为元素是浮动的,display 属性不会影响显示方式。 2. IE6 3px 文本偏移bug,浮动元素设置 margin-right: -3px。 3. min-width 和 min-height 只有 IE6不支持, 对于 height IE6 默认为最小高度,但是width 不是最小宽度。 4. <div><img src='1.jpg' /></div> 所有浏览器图片下方有空隙,通过设置如下属性可以避免。img 为display:block 或者设置vertical-align 属性为 vertical-align:top | bottom |middle |text-bottom 5. 如何让元素与文本输入框居中对齐,只要设置 输入框 vertical-align: middle; 元素设置 display: inline 或者 display: inline-block; 6:定义 1px 在IE6 下,设置 { height: 1px; overflow: hidden; } 或者 zoom: 0.07(小于 0.07也可) 7: hack:    _ IE6 支持;   * IE6 和 IE7;   \9 IE6和IE6+浏览器 Chrome 和Firefox 不支持   \0 IE8 和 IE8+

淘宝API开发系列:item_get

邮差的信 提交于 2020-03-21 11:59:47
3 月,跳不动了?>>> 为了进行淘宝的API开发,首先我们需要做下面几件事情。 1)开发者注册一个账号。 2)然后为每个淘宝应用注册一个应用程序键(App Key) 。 3)下载淘宝API的SDK并掌握基本的API基础知识和调用,具体可以参考论坛的信息( 淘宝商品详情介绍 )里面的技术分享区等。 4)利用SDK接口和对象,传入AppKey或者必要的时候获取并传入SessionKey来进行程序开发。 5)利用淘宝平台的文档中心和API测试工具,对接口进行测试。从而了解返回信息,方便程序获取。 6)无需以上五点,可直接注册账号调用接口, 点击开通(Key和Secret)测试 。 以上是一般淘宝API应用开发的关键流程,其中通过淘宝文档中心和API测试工具,进行概念了解和接口信息查询很重要。可直接注册我司平台调用数据。 API名称: 1、item_get - 获得淘宝商品详情 2、item_fee - 获得淘宝商品快递费用 3、item_password - 获得淘口令真实 4、item_search - 按关键字搜索淘宝商品 5、item_search_suggest - 获得搜索词推荐 6、item_search_jupage - 天天特价 7、item_sku - 获取sku详细信息 8、cat_get - 获得淘宝分类详情 1、item_search_shop - 店铺商品列表

line-height

半腔热情 提交于 2020-03-19 08:23:46
line-height,行高,指的是基线与基线之间的距离 1.文本在盒子中垂直居中,我们的做法是让行高等于盒子的高度,这是为什么呢? 要想让文本在盒子中垂直居中,那么效果应该是这样的 此时的行高,就等于 内容高度 + 下距离 + 上距离 = 盒子的高度。 来源: https://www.cnblogs.com/shizunatsu/p/12521861.html

解决IE6下,给图片加上line-height属性不起作用的方法

亡梦爱人 提交于 2020-03-16 04:08:08
在css设置中,我们一般用行高line-height来设定某一行的高度,这在ie7与firefox等浏览器都适用。但当行中有其他元素时(如图片,SPAN,li..)在IE6.0下line-height会不起效果,后来查了下资料,果然如此,资料如下: 当在一个容器里文字和img、input、textarea、select、object等元素相连的时候,对这个容器设置的line-height数值会失效; 同时以上元素的行高可能×2: 受影响的浏览器: Microsoft Internet Explorer 5.01 / Windows Microsoft Internet Explorer 5.5 / Windows s Microsoft Internet Explorer 6 解决方法 : 对和文字相连接的img、input、textarea、select、object等元素加以属性 margin: (所属line-height-自身img,input,select,object高度)/2px 0; vertical-align:middle 示例如下: 原代码如下: .shouchang{width:200px;float:left;line-height:24px;} 现代码如下: .shouchang{width:200px;float:left;line-height

去哪儿-05-recommendDev

旧城冷巷雨未停 提交于 2020-03-12 02:27:35
目标: 实现热销推荐与周末游组件的开发 与之前一样:在码云上创建分支,拉到本地,切换到该分支进行相应组件的开发。 热门推荐组件的开发 准备工作:Recommend.vue组件的创建,基本框架搭建与引入操作。 热门推荐字样的布局与样式设置: 布局 < div class = " title " > 热销推荐 </ div > 样式 css样式 .title margin-top .2rem line-height .8rem background-color #eee text-indent .2rem 使用li来实现 布局 < ul > < li class = " item border-bottom " > < img class = " item-img " src = " http://img1.qunarzz.com/sight/p0/1707/82/821428e3bbf93bbaa3.water.jpg_200x200_1f657041.jpg " > < div class = " item-info " > < p class = " item-title " > 迪士尼小镇 </ p > < p class = " item-desc " > 上海市浦东新区迪士尼小镇申迪西路255弄 </ p > < button class = " item-button "

css 文字垂直居中问题

我怕爱的太早我们不能终老 提交于 2020-03-11 13:11:36
CSS 文字垂直居中问题 问题:在 div 中文字居中问题: 当使用 line-height:100%%; 时,文字没有居中,如下: html: <div id="header_logo_des"></div>CSS: #header_logo_des{ width: 100%; height: 100%; font-size: 28px; text-align:center; line-height: 100%; /*设置line-height与父级元素的height相等,不能使用%;*/ } 但结果如下: 原因: line-height 属性设置行间的距离(行高) 1. 不能为负值; 2. 最好设置为具体像素值,如:line-height: 60px; 3. 在大多数浏览器中默认行高大约是 110% 到 120%; 解决办法: 1. 使用像素值: eg: line-height: 60px; // 60px, 是当前 div 的高度 2. 使用 %: eg: line-height: 200%; // 调高百分比 3. 不再使用 div 直接写文字,可使用其他内联标签包含文字,eg: <span> HTML: <span>岁月静好</span> CSS: span{ font-size: 28px; display: block; //内联元素--块级化 text-align:

小米商城首页的实现

假装没事ソ 提交于 2020-03-08 04:43:15
小米首页 效果图 html代码 由于代码过多,上传困难。 请访问链接:https://share.weiyun.com/5BWIENo 小米商城源文件 里面附带完整的源码文件 css代码 * { margin : 0 ; padding : 0 ; } ul,ol,li { list-style : none ; } img { display : block ; width : 100% ; } a { text-decoration : none ; } h1,h2,h3,h4 { font-size : 16px ; } body { font-size : 14px ; color : #000000 ; font-family : 宋体 , 微软雅黑 ; } html, body { width : 100% ; } /* css common */ .l { float : left ; } .r { float : right ; } .clear:after { content : "" ; display : block ; clear : both ; } .container { width : 1226px ; margin : 0 auto ; position : relative ; } .container-fluid { position :