那些不常用但很实用的css属性
时间:2023-03-30 13:45:12
CSS
作者:寒水寺逸禅https://segmentfault.com/a/11...1.-webkit-line-clamp可以限制block容器中的内容为指定的个数行。并且超过行数后,在最后一行显示“...”,属于正常显示display:-webkit-box;/*该值必须是-webkit-box或-webkit-inline-box*/-webkit-box-orient:vertical;/*该值必须是垂直的*/-webkit-line-clamp:2;/*该值为一个数字,表示显示多少行*/overflow:hidden;这是添加line-clamp后的显示https://developer.mozilla.org...2.all将除unicode-bidi和direction之外的所有属性重置为初始值,或继承值。全部:未设置;/*初始|继承|unset*/initial将元素所有属性的值改为初始值。inherit将元素的值更改为从父元素继承的值unset如果元素的属性值是可继承的,则重置为父元素的继承值,否则更改为初始值。3.box-decoration-breakhttps://developer.mozilla.org...4.caret-color用于定义插入符号的颜色。这里说的插入符就是网页可编辑区的那个,闪烁的竖条|用于指示将插入用户输入的位置。插入符号颜色:红色;5.clip-path/shape-outsideclip-path属性使用裁剪创建元素的可显示区域。区域内的部分显示,区域外的部分隐藏。类似的裁剪还有svg的clipPath。clip-path的值有如下图形inset(xxx):裁剪到矩形circle(xx):裁剪到原型ellipse(xxx):裁剪到椭圆polygon(xx):裁剪到多边形none:不裁剪前面的例子准备好了我和我的同伴,我们已经同意,我应该晚饭后,不迟于十一点,到他家叫他。这位健壮的年轻法国人属于一小部分巴黎运动员,他们将“热气球”作为一种消遣。在用尽了在普通运动中找到的所有感觉之后,甚至是那些以极快的速度“驾驶汽车”的感觉,“AéroClub”的成员现在在空中寻求,在那里他们沉迷于各种大胆的壮举,他们已经不再在地球上找到令人神经紧张的兴奋。
不会裁剪剪辑路径:没有任何;圆形裁剪clip-path:circle(40%);//半径为40%,圆心默认为中心椭圆裁剪clip-path:ellipse(130px140pxat10%20%);多边形裁剪clip-path:polygon(50%0,100%50%,50%100%,050%);我们可以看到上面的图形是怎么裁剪出来的,外面看不见的边框一直是一个矩形,也就是说文字一直是矩形WrapAround那么有没有办法让文字紧紧的贴合在裁剪后的图形周围?是的,使用shape-outside属性shape-outside定义了一个可以是非矩形的形状,相邻的内联内容应该环绕在该形状周围。默认情况下,内联内容环绕其矩形边距;默认矩形环绕剪辑路径:无;形状外部:无圆包裹剪辑路径:圆(40%);形状外:圆形(40%);椭圆环绕剪辑路径:椭圆(130px140px10%20%);外部形状:椭圆(130px140px20%20%);可变环绕剪辑路径:多边形(50%0,100%50%,50%100%,050%);形状外部:多边形(50%0、100%50%、50%100%、050%);当然,圆形裁剪不一定要用圆形环绕,圆形裁剪可以用多边形环绕,多边形裁剪可以用菱形环绕。简而言之,这两者之间没有任何关系,也不是成对匹配。一切由你决定,自己定义6.object-fit/object-positionobject-fit属性指定可替换元素的内容应该如何适应它用来确定高度和宽度的框。object-position属性指定被替换元素的内容对象在元素框内的对齐方式。注:可替换元素包括iframe、video、embed、img,在例子前准备
图片必须设置100%宽高,即不能超过parent在设置object-fit之前设置容器,否则没有意义。fill图片会被拉伸变形,宽高会被拉到父容器的100%以适应父容器。在父容器中,较短的一侧会有一个自动填充的间隙。object-fit:contain;covercover图片不会变形,图片会按照自己的比例缩放。整张图片会放在父容器中,图片的最短边会作为基准包含在父容器中。长边会溢出object-fit:cover;none与父容器的宽度和高度无关。显示图片的原始纵横比,以自身图片的“中心”为基准,将其置于父容器的“中心”。object-fit:none;scale-down内容的大小与none或contain之一相同,取决??于两者中哪一个导致更小的对象大小。适合对象:缩小;如果图片大于父容器的大小,则沿用contain的效果;如果图片小于父容器的尺寸,则遵循none的效果。在上面object-fit的展示中,我们发现可替换元素的对齐是自动的。例如,object-fit:fill;将左上角与父容器的左上角对齐。适合对象:无;中心与父容器的中心对齐等等。但是如果我们想手动更改对齐方式怎么办??您可以使用object-position属性指定可替换元素的内容在其内容框中的位置。对象位置:10px10px;px可以设置,第一个值代表距离父容器左侧的距离,第二个值代表距离父容器顶部的距离。只有一个值表示距父容器左侧的距离。也可以设置%值,但此时只有在一侧有空格的情况下才有效。如果没有空格,只是填充父元素,是不行的。设置px没有这样的问题,之后的任何事情都会起作用。对象位置:右上;keywords可以设置,第一个value关键字可以设置(left|center|right),第二个keyword可以设置(top|center|bottom),此时不是指到左边的距离或者距离从顶部开始,指示将其放置在父元素上的位置。对象适合:填充;对象位置:50px50px;//10pxfromtheleft,10%fromtopplusobject-position前后对比:object-fit:contain;object-position:righttop;//停留在右上方家object-position前后比较:7.font-stretch为字体定义了正常或拉伸的字体外观,只是表示当有多种字体可供选择时,最合适的尺寸会为字体选择。normal默认字体semi-condensed,condensed,extra-condensed,ultra-condensed小于默认字体semi-expanded,expanded,extra-expanded,ultra-expanded大于默认字体8,font-variant-caps可以控制大写字母等特殊字符的使用。normal关闭所有特殊字符变体的使用。small-caps允许使用小型大写字母(OpenType功能:smcp)。小型大写字母是使用大写形式但与小写字母大小相同的字母。all-small-caps将所有大写和小写字母转换为小型大写字母。(OpenType特性:c2sc、smcp)。petite-caps允许使用petitecaps(OpenType特性:pcap)。all-petite-caps将所有大写和小写字母转换为小型大写字母。(OpenType特性:c2pc、pcap)。unicase允许将大写字母转换为与普通小写字母混合的小型大写字母(OpenType功能:unic)。titling-caps允许首字母大写(OpenType功能:标题)。大写变体字符通常设计为与小写字母一起使用。在标题序列中,全部使用大写字母会产生过于强烈的视觉效果。首字母大写就是为了应对这种情况。9.font-variant-east-asian控制东亚字符(如日文和中文、韩文等)的替代符号的使用。有几个值:正常;红宝石;jis78;jis83;jis90;jis04;简化;传统的;全屏宽度;proportional-width10,max-content/min-content/fill-available/fit-content这些值可以用在width,height,min-width,min-height,max-width和max-height属性上。display必须是inline-block或block,否则上面的值不起作用。fill-available元素填充可用空间。参考基础是父元素的宽度和高度。类似于子元素的div填充父元素的宽度,fill-available不仅可以填充宽度还可以填充高度。示例之前的代码
Thisisthecontentofchildelement 在span上设置fill-available时的不同表现如果里面有元素,是不是img?也是inline-block,应该也能满足这种情况。我们可以看到img和span的区别在于当width或者height其中之一被设置的时候,整个图片会按照自己的比例进行缩放。max-content的宽度或高度将自动调整以仅容纳子元素中长度最长(在文本不换行时计算)的元素。参考的基准是子元素的宽度和高度。