Web笔记(基础5)

 五.css语法元素


1.emmet语法
TAB键 生成标签
标签*个数            如:div*7快速生成多个相同标签
父级标签>子级标签        如:ul>li加TAB键 则快速生成
兄标签+弟标签            如:div+p加TAB键 则快速生成
.名字加TAB键,快速生成    如.名字 <div class="名字"></div>
#名字加TAB键,快速生成    如#名字 <div id="名字"></div>
标签.名字加TAB键        如:p.名字 <p class="名字"></p>
标签#名字加TAB键        如:p#名字 <p id="名字"></p>
$自增符号            如:.名字$*7加TAB <div class="名字1"></div> <div class="名字2"></div>    
标签{文字}            如:p{字字字字字}(p{---}*数字)加TAB <p>字字字字字</p>

2.复合选择器
(1)后代选择器     选择所有后代
元素1 元素2 {样式声明} 元素2必须是1的子集
(2) 子选择器    只选择子集
元素1>元素2 {样式声明}
(3) 并集选择器    
元素1,元素2 {样式声明} 竖着写,最后一个选择器不需要加逗号 

(4) 伪类选择器 a代指标签名
a:link    选择未被访问过的链接
a:visited    选择访问过的链接
a:hover    选择鼠标经过的链接
a:active    选择鼠标正在按下未弹起的链接
按照lvha顺序不能改变顺序
:focus    用于选取获得焦点光标的表单,主要针对表单元素 如:input:focus{}
                                     标签名
3.css的元素显示模式                            
(1) 块元素
自己独占一行,可以设置高宽,宽度默认容器的100%
是一个容器盒子里面可以放任何元素
文字类元素中不允许放块级元素,如<p>中不能放<div>

(2) 行内元素
相邻行内元素在一行上一行可显示多个,宽高直接设置无效
默认的宽度就是内容本身的宽度,只能容纳文本或其他行内元素
链接里不能再放链接,<a>里可以放块级元素

(3) 行内块元素 
图片,表单,单元格
可以和相邻行内元素在一行上,但之间有空隙,一行可以放多个(行特点)
默认宽度就是本身内容宽度(行特点)
宽高以及内外边距都可以控制(块特点)

(4) 元素显示模式的转化
display:block; 转换为块元素    写入style中
display:inline; 转换为行内元素
display:inline-block; 转换为行内块元素
(5) 单行文字水平居中 让文字行高等于盒子高度

4.css的背景
(1) 背景颜色    backround-color
backround-color: transparent透明色(默认)/颜色值;
(2) 背景图片    background-image
background-image:none/url(地址);
background-size:宽 高;
(3) 背景平铺    background-repeat
background-repeat:repeat/no-repeat/repeat-x/repeat-y;
            平铺     不平铺    沿x轴平铺   沿y轴平铺
默认情况下平铺
(4) 背景位置    background-position
background-position:top/center/bottom/left/center/right
               上     中     下       左      中         右
background-position:x y/数字px 数字px;
(5) 背景图像固定    background-attachment
background-attachment:scroll/fixed;
               默认滚动   背景固定
(6) 符合属性
无特定要求background:---属性---;
(7) 背景颜色半透明
background:rgba(0,0,0,0.3);        a透明度值取值为0-1
(8)背景线性渐变    背景渐变必须添加浏览器私有前缀
background:-webkit-linear-gradient(起始方向,颜色,颜色);

5.css的三大特性
(1) 层叠性
如有重复内容后面的会覆盖前面的
(2) 继承性
子标签会继承父标签的某些样式  text- font- line-
font-size:12px(文字大小)/24px(行高)
font-size:12px/1.5 则行高为文字大小的1.5倍

(3) 优先级
优先执行:!important>行内样式style>ID选择器>类/伪类选择器class/.>元素选择器>继承或*
        无穷大      1,0,0,0      0,1,0,0       0,0,1,0        0,0,0,1    0,0,0,0        
 权重叠加:复合选择器会有权重叠加,虽会叠加,但不会进位
要想达到想要的效果可以权威叠加

6.css的盒子模型
(1) 网页布局的本质
准备相关网页元素/设置盒子样式,摆到相应位置/给盒子中装内容

(2) 盒子模型的组成    写入style中    边框,内容,内外边距
.1. 边框border        border-width 宽度(粗细) px为单位
                border-style 样式     solod实线边框 dashed虚线边框 dotted点线边框
                 border-color 颜色     复写border:1px solid #ccc;无顺序
                 可以单独设置边框 border-top上/bottom下/left左/right右:属性;
     表格细线边框         border-collapse:cillapse; 合并相邻边框
.2. 内边距padding     padding-left/right/top/bottom:--px;    
                 左内边距    右内边距 上内边距 下内边距
     padding复合属性    padding:--px/--px/--px/--px;
                一个值:上下左右的内边距,两个值:上下/左右,三个值:上/左右/下,四个值:上/右/下/左 顺时针
     padding不会撑开盒子的情况:不设置width/height
.3. 外边距margin        margin-left/right/top/bottom    盒子与盒子之间的距离
                左外边距  右外边距    上/下外边距
    margin复合属性    margin:--px/--px/--px/--px;
                一个值:上下左右的外边距,两个值:上下/左右,三个值:上/左右/下,四个值:上/右/下/左 顺时针

(3) 盒子元素居中对齐
块级盒子水平居中对齐:盒子必须指定宽度width,盒子左右外边距都设为auto自动 如margin:0 auto;上下0 左右auto
行内元素和行内块元素水平居中:给其父级元素添加text-align:center;

(4) 外边距合并-嵌套块元素塌陷(标准流)
给父级元素定义一个边框如border:1px solid transparent(透明);
给父级元素定义一个内边框如padding:1px;
给父级元素添加overflow:hidden;
浮动的盒子不会有外边距合并问题

(5) 清除内外边距
*{
    margin: 0;
    padding: 0;
}
行内元素尽量只设置左右内外边距

7.盒子浮动
(1) 圆角边框border-radius:;
border-radius:--px/%;,         圆形边框50%设置为高度宽度的一半
           半径        圆角矩形设置为高度的一半
border-radius:一个值是四个角/两个值则是对角线角/四个值是顺时针四个角
分开写:如border-top-left-radius:; 先top/bottom后left/right

(2) 盒子阴影box-shadow:;
box-shadow:    --px     --px      --px          --px         color;    inset;
      x轴水平阴影     垂直  模糊虚实程度     阴影尺寸大小     颜色    内阴影(默认外阴影不用写)

盒子阴影不占用空间,不影响其他盒子排列
(3) 文字阴影text-shadow:;
text-shadow:--px --px     --px        color;
        x轴    y轴    虚实程度    颜色

(4)浮动float:left/right;
特性:脱标,浮动元素一行显示,浮动元素具有行内块元素
.1.脱标:脱离标准普通流的控制(浮)移动到指定位置(动)
浮动的盒子不再保留原先的位置
.2.浮动元素一行显示
浮动的盒子一行内显示顶端对齐排列
.3.浮动元素具有行内块特性
任何元素都可以浮动,任何元素添加浮动后都会具有行内块特性
如果块级盒子没有设置宽度,默认宽度和父级一样,但添加浮动后,他的大小根据内容决定
.4.先用标准流父元素排列上下位置,内部子元素采取浮动排列左右位置
浮动的盒子不会影响前面的标准流,只会影响后面的标准流,压住后面的盒子

(5)清除浮动clear:both;
同时清除左右两侧浮动的影响,闭合浮动
.1.额外标签法/隔墙法
style>    .名字{clear:both;}
body>        <标签 class="名字"> </标签>  
        在最后一个浮动元素的后面加一个空标签,要求新添加的空标签必须是块级元素
.2.父级添加overflow属性
style>    overflow:hidden/auto;    溢出部分隐藏/溢出加滚动条
.3.父级添加after伪元素
style>      照顾低版本
        .clearfix:after{            
         content:"";             
         display:block;
         height:0;
         clear:both;
         visibility:heidden;}

        .clearfix{*zoom:1;}
body>        给父级添加类名class=clearfix    类似于额外标签法
.4.父级添加双伪元素!!!
style>     照顾低版本
        .clearfix:before,
        .clearfix:after{            
         content:"";             
         display:table;}

        .clearfix:after{    
         clear:both;}

        .clearfix{*zoom:1;}
body>        给父级添加类名class=clearfix    

8.ps
(1)切图
ipg图片 gif动图 png 透明背景
.1.图层切图
移动工具/在图片中点击目标图片/右边图层上右键 快速导出为PNG
合并图层 shift多选ctrl+E合并
.2.切片切图
切片选中工具手滑/文件菜单/导出/储存为web设备所用工具/选择图片格式/储存/选中的切片

9.页面布局思路
(1)确定版心-确定行模块-先确定每个列的大小,再确定列布局---先结构后样式
(2)导航栏
.1.链接 不直接用a,而是用li包含链接(li+a)的做法
.2.导航栏可以不用给宽度,便于将来继续添加文字
.3.导航栏里文字不一样多,所以给链接a左右padding撑开盒子,而不指定宽度
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
JSP(Java Server Pages)是一种动态网页技术,它可以将Java代码嵌入到HTML页面中,实现动态页面的生成。JSP技术在Web开发中使用非常广泛,下面将介绍JSPWeb开发的基础知识。 一、JSP基础语法 JSP页面的基本语法是HTML语法,但是在HTML页面中可以嵌入Java代码。JSP页面中使用<% %>标签来包含Java代码,使用<%= %>标签来输出Java代码生成的结果。例如: ``` <html> <head> <title>JSP页面</title> </head> <body> <% String message = "Hello, JSP!"; out.println(message); %> </body> </html> ``` 在上面的例子中,我们定义了一个message变量,并且使用out.println()方法将其输出到页面上。 二、JSP内置对象 JSP页面中有一些内置对象,这些对象可以帮助我们快速开发Web应用程序。常用的JSP内置对象包括: 1. request对象:代表HTTP请求,可以获取请求参数和请求头等信息。 2. response对象:代表HTTP响应,可以设置响应头和响应体等信息。 3. session对象:代表用户会话,可以存储用户信息和状态等。 4. application对象:代表Web应用程序,可以获取应用程序级别的信息和状态等。 5. pageContext对象:代表JSP页面上下文,可以获取页面级别的信息和状态等。 6. out对象:代表JSP页面的输出流,可以将数据输出到页面上。 三、JSP标签库 JSP标签库是一组自定义标签,用于实现复杂的业务逻辑和页面效果。JSP标签库通常通过标签文件或Java类的形式来实现。在JSP页面中,我们可以使用标签库来实现模板化的页面设计,例如: ``` <%@ taglib prefix="my" uri="http://www.example.com/mytags" %> <html> <head> <title>JSP页面</title> </head> <body> <my:hello name="JSP" /> </body> </html> ``` 在上面的例子中,我们使用my:hello标签来输出“Hello, JSP!”这个字符串。 四、JSP中的EL表达式 EL(Expression Language)表达式是一种简化的表达式语言,用于获取和操作页面中的数据。EL表达式通常使用${ }标签来包含,例如: ``` <html> <head> <title>JSP页面</title> </head> <body> ${1+1} </body> </html> ``` 在上面的例子中,我们使用EL表达式输出了2这个结果。 五、JSP中的MVC架构 MVC(Model-View-Controller)是一种软件架构模式,用于将应用程序分为三个部分:模型、视图和控制器。在JSPWeb开发中,通常会使用MVC架构来实现应用程序的开发。例如: 1. 模型:使用JavaBean来表示业务逻辑和数据操作。 2. 视图:使用JSP页面来表示用户界面和页面效果。 3. 控制器:使用Servlet来实现请求的转发和业务逻辑的控制。 在MVC架构中,模型、视图和控制器之间通过请求和响应来进行交互,这样可以将应用程序分离为三个独立的部分,便于开发和维护。 总之,JSPWeb开发是一种非常重要的技能,它可以帮助我们快速搭建Web应用程序,并且可以大大提高应用程序的开发效率和质量。希望这些信息对您有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值