CSS进阶:布局与定位技术详解

需积分: 15 2 下载量 48 浏览量 更新于2024-08-18 收藏 6.98MB PPT 举报
"本资源主要介绍了JavaScript和jQuery在创建魔术布局中的应用,特别是深入探讨了CSS的相关概念和技术,包括<div>和<span>标记、盒子模型、元素定位、CSS排版、JavaScript与CSS的交互,以及块元素和内联元素的特性。此外,还涉及到了绝对定位与相对定位、Visibility和Display属性、float属性以及clear属性的重要作用。" 在深入学习JavaScript和jQuery魔术布局的过程中,了解并掌握CSS的基础知识是至关重要的。首先,`<div>`和`<span>`是HTML中常见的两种标签,`<div>`常用于组织和布局,可以容纳其他元素,而`<span>`通常用于对文本进行精细化操作,两者都是CSS定位和样式设计的关键。 盒子模型是理解CSS布局的基础,它包括内容(content)、内边距(padding)、边框(border)和外边距(margin)四个部分。元素的宽度和高度不仅由内容决定,还会受到padding和border的影响,理解这一概念对于精确布局至关重要。 元素定位是CSS中的重要概念,包括绝对定位和相对定位。绝对定位(position:absolute)使元素脱离正常文档流,位置相对于最近的已定位祖先元素;相对定位(position:relative)则是在元素原有位置的基础上进行偏移,不影响其他元素的位置。 CSS排版观念包括流体布局、网格布局等,这些布局方式可以帮助我们创建响应式和灵活的网页。通过排版实例,我们可以学习如何利用这些布局技巧实现各种复杂的页面结构。 JavaScript与CSS的结合使用可以增强网页的交互性,例如通过JavaScript动态修改CSS样式,实现动态效果和用户交互。 块元素和内联元素是CSS布局中的两类基础元素。块元素如`<h1>`、`<p>`、`<div>`等,它们独占一行,高度、行高和边距可自由调整,宽度默认为容器的100%;内联元素如`<a>`、`<img>`、`<span>`等,它们在同一行显示,宽度固定,高度和边距不可直接设置。 Visibility属性的`hidden`值可以隐藏元素但保留其位置,`visible`则是默认值,显示元素。Display属性则可以控制元素的显示方式,`block`使元素表现为块元素,`none`则完全隐藏元素,使其从文本流中移除。 float属性用于元素浮动,常见值有`left`、`right`和`none`,浮动元素会脱离普通文档流,影响周围元素的排列。为了防止浮动元素的影响,可以使用clear属性,如`clear:both`来清除两侧的浮动。 以上知识点构成了JavaScript+jQuery魔术布局中的CSS进阶内容,熟练掌握这些知识将有助于创建更加复杂和动态的网页布局。
2023-05-31 上传

matlab程序:%cf对应的af不唯一,取af大于零的时候 ar=0:0.5:10; syms x assume(x>0) %根据魔术公式求导得到ar-cr的关系,求的cr,cf a0=1.5999;a1=-0.0048;a2=0.9328;a3=4.0847;a4=44.8338; a6=-0.0076;a7=-0.1807;a8=-0.0026;a9=0.0367; a11=0.0004;a12=-0.0115;a17=0.0009; F_zr=m*9.8*lf/(lf+lr)/1000; C=a0*(5-a)/4; D2=(a1*(F_zr^2)+a2*F_zr)*a; B2=(a3*sin(2*atan(F_zr/a4))/(C*D2))*(2-a); Sh2=a8*F_zr+a9; E2=(a6*F_zr+a7); cr=(1000*C*D2*cos(C*atan(E2*(atan(B2*ar) - B2*ar) + B2*ar)).*(B2 - E2*(B2 - B2./(B2^2*ar.^2 + 1))))./((E2*(atan(B2*ar) - B2*ar) + B2*ar).^2 + 1); cf=(m*V^2*lr*cr)./(cr*(lf+lr)*(lf+lr)-m*V^2*lf); % 已知参数 F_zf=m*9.8*(lr)/(lr+lf)/1000; D1=(a1*(F_zf^2)+a2*F_zf)*a; B1=(a3*sin(2*atan(F_zf/a4))/(C*D1))*(2-a); E1=a6*F_zf+a7; % 定义af-cf函数 f=@(x)(1000*C*D1*cos(C*atan(E1*(atan(B1*x) - B1*x) + B1*x)).*(B1 - E1*(B1 - B1./(B1^2*x.^2 + 1))))./((E1*(atan(B1*x) - B1*x) + B1*x).^2 + 1) - cf; % 反求af x0=[0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0]+1; af=fsolve(f,x0); %转化为弧度制 af1=af*pi/180;ar1=ar*pi/180; %求得侧偏角和横摆角速度 r=(V*(cetia-af1+ar1))/(lf+lr); betia=(lf*(cetia-af1)-lf*ar1)/(lf+lr); figure(5); plot(betia,r); axis([-40,40,-40,40]); title('betia-r'); xlabel('betia');ylabel('r'); hold on;报错警告: Trust-region-dogleg algorithm of FSOLVE cannot handle non-square systems; using Levenberg-Marquardt algorithm instead. > 位置:fsolve (第 342 行) 位置: untitled2 (第 36 行) No solution found. fsolve stopped because the last step was ineffective. However, the vector of function values is not near zero, as measured by the value of the function tolerance. <stopping criteria details> >> 请修改

2023-06-02 上传

clear;clc; cetia=0;lf=1.43;lr=3.57;V=60/3.6;m=5760;a=1; %cf对应的af不唯一,取af大于零的时候 ar=0:0.5:10; %根据魔术公式求导得到ar-cr的关系,求的cr,cf a0=1.5999;a1=-0.0048;a2=0.9328;a3=4.0847;a4=44.8338; a6=-0.0076;a7=-0.1807;a8=-0.0026;a9=0.0367; a11=0.0004;a12=-0.0115;a17=0.0009; F_zr=m*9.8*lf/(lf+lr)/1000; C=a0*(5-a)/4; D2=(a1*(F_zr^2)+a2*F_zr)*a; B2=(a3*sin(2*atan(F_zr/a4))/(C*D2))*(2-a); Sh2=a8*F_zr+a9; E2=(a6*F_zr+a7); cr=(1000*C*D2*cos(C*atan(E2*(atan(B2*ar) - B2*ar) + B2*ar)).*(B2 - E2*(B2 - B2./(B2^2*ar.^2 + 1))))./((E2*(atan(B2*ar) - B2*ar) + B2*ar).^2 + 1); cf=(m*V^2*lr*cr)./(cr*(lf+lr)*(lf+lr)-m*V^2*lf); % 已知参数 F_zf=m*9.8*(lr)/(lr+lf)/1000; D1=(a1*(F_zf^2)+a2*F_zf)*a; B1=(a3*sin(2*atan(F_zf/a4))/(C*D1))*(2-a); E1=a6*F_zf+a7; % 定义af-cf函数 f = @(x) (1000*C*D1*cos(C*atan(E1*(atan(B1*x) - B1*x) + B1*x)).*(B1 - E1*(B1 - B1./(B1^2*x.^2 + 1))))./((E1*(atan(B1*x) - B1*x) + B1*x).^2 + 1) - cf; % 反求af x = fsolve(@(x) (1000*C*D1*cos(C*atan(E1*(atan(B1*x) - B1*x) + B1*x)).*(B1 - E1*(B1 - B1./(B1^2*x.^2 + 1))))./((E1*(atan(B1*x) - B1*x) + B1*x).^2 + 1) - cf,[0 20]); af=x/57;ar1=ar/57; %求得侧偏角和横摆角速度 r=(V*(cetia-af+ar1))/(lf+lr); betia=(lf*(cetia-af)-lf*ar1)/(lf+lr); figure(5); plot(betia,r); axis([-40,40,-40,40]); title('betia-r'); xlabel('betia');ylabel('r'); hold on;报错对于此运算,数组的大小不兼容。 出错 untitled2>@(x)(1000*C*D1*cos(C*atan(E1*(atan(B1*x)-B1*x)+B1*x)).*(B1-E1*(B1-B1./(B1^2*x.^2+1))))./((E1*(atan(B1*x)-B1*x)+B1*x).^2+1)-cf (第 30 行) x = fsolve(@(x) (1000*C*D1*cos(C*atan(E1*(atan(B1*x) - B1*x) + B1*x)).*(B1 - E1*(B1 - B1./(B1^2*x.^2 + 1))))./((E1*(atan(B1*x) - B1*x) + B1*x).^2 + 1) - cf,[0 20]); 出错 fsolve (第 264 行) fuser = feval(funfcn{3},x,varargin{:}); 出错 untitled2 (第 30 行) x = fsolve(@(x) (1000*C*D1*cos(C*atan(E1*(atan(B1*x) - B1*x) + B1*x)).*(B1 - E1*(B1 - B1./(B1^2*x.^2 + 1))))./((E1*(atan(B1*x) - B1*x) + B1*x).^2 + 1) - cf,[0 20]); 原因: Failure in initial objective function evaluation. FSOLVE cannot continue. 相关文档

2023-06-01 上传
2023-05-31 上传