前言 最近群里的小伙伴去面试,遇到这样一个问题,面试官问:"用 css 对一行文字进行布局,当文字不够换行的时候,这行文字要居中显示,当文字出现换行的时候,这行文字要靠左显示.",遇到这样的需求一下束手无策,后来查下资料,哦,原来这样,这里总结一下实现的具体方法. 正文 1.需求分析与使用场景 具体需求分析:未知文字的长度的时候,当文字的长度小于盒子的宽度的时候,也就是一行可以放的下的时候,文字居中,当文字长度大于盒子宽度的时候,文字要实现自动换行,成为多行文字,此时文字要求左对齐.其…
<!DOCTYPE html> <html> <head> <link rel="stylesheet" href="index.css"> <style> .father{ width: 100px; height: 100px; text-align: center; background: red; } .son{ display: inline-block; text-align: left; ba…
其实这种需求还是蛮常见的,主要用于产品列表页面,用于产品图片下面,显示产品的名称. 想要实现的效果为: 未知文字长度,当文字长度小于盒子宽度,也就是一行时,文字居中. 当文字长度大于盒子的宽度,会自动换行,成为多行文字,此时文字左对齐. 1.利用行内元素: 我首先想到了这个思路,思路如下: 让P居中,P中的文字左对齐:(P的父级text-align:center;  P自身text-align:left;) P的宽度根据文字的宽度伸缩,当文字为一行时,则P的宽度小于LI的宽度,居中:则看上去文字…
开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉到生僻的 CSS 属性,赶紧去补习一下吧. 不断更新,不断更新,不断更新,重要的事情说三遍. 谈谈一些有趣的CSS题目(一)-- 左边竖条的实现方法 谈谈一些有趣的CSS题目(二)-- 从条纹边框的实现谈盒子模型 谈谈一些有趣的CSS题目(三)-- 层叠顺序与堆栈上下文知多少 谈谈一些有趣的CSS题…
开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉到生僻的 CSS 属性,赶紧去补习一下吧. 不断更新,不断更新,不断更新,重要的事情说三遍. 单行居中显示文字,多行居左显示,最多两行超过用省略号结尾 这题就厉害了我的哥. 题目就是如上要求,使用纯 CSS,完成单行文本居中显示文字,多行居左显示,最多两行超过用省略号结尾,效果如下: 不愿看长篇大论…
在开发中经常会碰到需要对按钮中的图片文字位置做调整的需求.第一种方式是通过设置按钮中图片文字的偏移量.通过方法setTitleEdgeInsets和setImageEdgeInsets实现 代码如下: /*!**方式一***/ - (void)updateBtnStyle_rightImage:(UIButton *)btn { CGFloat btnImageWidth = btn.imageView.bounds.size.width; CGFloat btnLabelWidth = btn…
居中需要用到 text-align:center,居左是默认值也就是text-align:left.要让两者结合起来需要多一个标签. <h2><p>单行居中,多行居左</p></h2> <style> p { display: inline-block; text-align: left; } h2{ text-align: center; } </style>…
UIPageControl控件,默认是居中显示的,如下图: 在很多的APP中,会看到pageControl是居左或居右显示的,如下图:   如何控制pageControl的位置显示呢? 设置为居右的代码如下: // // 设置pageControl位置(右对齐) // CGSize pointSize = [_pageContrl sizeForNumberOfPages:_colorArray.count]; CGFloat page_x = -(_pageContrl.bounds.size…
想要图片和文字水平居中对齐很容易,可今天做这个树的时候,遇到了要将图片上下居中.这下就不知道怎么搞. 拿手册看也看不出所以然来,不同的浏览器对DIV的支持不一个,目前最好的浏览器是Firefox. 这里涉及到两个属性,一个是line-height,另一个是vertical-align.在IE里面,只需要line-height就可以实现这个效果,不过要想在firefox和opea里面也实现这样的效果,必须用到vertical-align,而且这是属性一定要定义在image上面,而不是定义在div上…
1.background: inherit;制作倒影 方法很多,但是我们当然要寻找最快最便捷的方法,至少得是无论图片怎么变化,div 大小怎么变化,我们都不用去改我们的代码. -webkit-box-reflect 这是一个十分新的 CSS 属性,使用起来十分简单,可以从各个方向反射我们内容. box-reflect 有四个方向可以选,below | above | left | right 代表下上左右,更具体的可以看看 MDN . 不过兼容性过于惨淡,基本上是只有 -webkit- 内核的浏…