当前位置:
  1. 首页 »
  2. 笔记 »
  3. 正文

CSS中Position:fixed偏移解决方案

零分 382

Position:fixed,生成绝对定位的元素,相对于浏览器窗口进行定位。元素的位置通过 “left”, “top”, “right” 以及 “bottom” 属性进行规定。

Position:fixed,在实际使用过程中多少都会遇到偏移的问题。虽然说 Position:fixed是相对于浏览器进行定位的,有时候也会受到外层DIV的影响,在非IE下, Position:fixed,浮动时是水平位置是相对于外层的。如果需要水平居中,可以设置left:50%,margin-left:- Position:fixed /2,即本身宽度的一半。其实,CSS位置的设置逻辑还和数学真有点关系!当然,可以设置一个居中层,margin:0 auto;外层,内层进行 Position:fixed,也会水平居中。同样也实用于IE浏览器。

不过,对于非水平居中的,比如侧栏浮动,可以加个同样大小的DIV外层,一来可以在外层添加一个ID,以便JS scrollTop 来识别。二来,可以在position:fixed后保留位置,以便在高度不够特别是临界的情况下还能保持原来的高度。

Position:fixed,虽然是相对于浏览器定位的,但是,在判断滚动条而进行是否需要 Position:fixed的,可以添加一个外层给一个水平位置的定位,防止因添加了 Position:fixed后,IE下,层进行了左右的偏移

标签:

网站设置开灯(亮模式/白天)和关灯(暗模式/黑夜)效果

在很早之前,这个效果叫做开灯/关灯,现在叫做白天/黑夜,曾经有那么一段时间没有看到过这种效果,现在又很多网站/APP都喜欢这种切换白天/黑夜模式。 实现效果:设置2套或者多套色调模板,和之前的那种换皮肤大差不差。所以博客新主题也设置了这么一个效果,样式布局基本没怎么改变,后台设置页升级了一下,很多东西都不再“写死”,可以自由设置! 白天模式效果: 黑夜模式效果: 感觉黑夜的色调比较好看。 总体涉及到的原理: 1、设计2套或者多套CSS样式,可以在body里添加一个class,后面保留class/ID样式名称不变,在不同的样式里给设计一个区域,通过body里的class名调用不同的样式CSS。
笔记 2,224

Tab手风琴弹出菜单遇到的问题,diaplay:block与JQ slideToggle 冲突,显示多次效果

在设计手风琴Tab展开收起菜单时,遇到了一个问题,第一次点击时,总是出现多次效果。 display:block,元素可见 slideToggle,当display:block可见时,显示JQ动画效果slideup,当display:none,不可见时,显示效果slideDown, 因为还要设计右边显示展开收起的图标(“+”可以展开,“-”,可收起),默认需要显示第一个菜单展开的效果。所以需要给一个CSS active,当已经展开时添加active,收起时移除active。 因为初次加载时需要展开第一个,所以第一个的初始值有active。 第一次使用时,贪图方便,就把display:block的
笔记 1,678

CSS并排,左边不抢空间,右边固定大小

CSS并排布局: flex,position,float,最近很少用float,感觉总是控制不好它。 最好用的布局,flex,右边设置好一个固定宽度,左边使用grow:1,或者width:calc(100% - 固定宽度)。 另外一种就是position,父层设置 position:relative,padding-right:右边的固定宽度,左边设置width:100%,右边设置position:absolute,固定在右边。 现在习惯用flex,flex,并排的两个层会自动自适应高度
笔记 1,249

CSS中的变量VAR()函数,CSS中var()的使用

var() 函数用于插入 CSS 变量的值。CSS 变量可以访问 DOM,这意味着您可以创建具有局部或全局范围的变量,使用 JavaScript 来修改变量,以及基于媒体查询来修改变量。使用 CSS 变量的一种好方法涉及设计的颜色。您可以将它们放在变量中,而不必一遍又一遍地复制和粘贴相同的颜色。 var() 函数的语法 var(name, value) name:必需。变量名(以两条破折号开头)。value:可选。回退值(在未找到变量时使用)。注释:变量名称必须以两个破折号(–)开头,且区分大小写! var() 如何工作 首先:CSS 变量可以有全局或局部作用域。 全局变量可以在整个文档中进行
笔记 1,624

CSS控制段落首字突显

CSS控制每段第一个字的样式: *{margin:0;padding:0;} p{width:150px;color:#000;font-size:1em;} p:first-letter{font-size:2.5em;padding-right:5px; text-transform:uppercase;}/*段落第一个字母样式 :first-letter ,另外text-transform:uppercase; 是将英文字母转换成大写格式输出 */ /* :first-letter样式中还可以使用行内元素的vertical-align属性,以控制同行内容的对齐方式,字体比较小时能派上用
笔记 2,458