HTML前端入门归纳——样式
本人一直在从事.net的开发,界面都是采用的WPF,近期花了一个多月进行HTML前端的学习,在这里呢进行学习总结和归纳。
本系列将主要分为4个模块:
控件
样式
布局
JavaScript
根据多年WPF的开发经验,界面就是控件及样式与布局的组合,再加上代码来控制交互逻辑,本期先对HTML常用的样式属性进行归纳。
选择器
选择器用于对HTML控件及css的样式进行匹配,常用的选择器有如下几种:
id选择器
以下的样式规则应用于元素属性 id="para1":
#para1
{
text-align:center; color:red;
}
class选择器
在以下的例子中,所有拥有类名为center的 HTML 元素均为居中。
.center
{
text-align:center;
}
所有的 p 元素使用 class="center" 让该元素的文本居中:
p.center
{
text-align:center;
}
分组选择器
h1,h2,p
{
color:green;
}
以上样式与下面的效果一致
h1
{
color:green;
}
h2
{
color:green;
}
p
{
color:green;
}
嵌套选择器
适用于选择器内部的选择器的样式
- p{ }: 为所有 p 元素指定一个样式。
- .marked{ }: 为所有 class="marked" 的元素指定一个样式。
- .marked p{ }: 为所有 class="marked" 元素内的 p 元素指定一个样式。
- p.marked{ }: 为所有 class="marked" 的 p 元素指定一个样式。
后代选择器
以下实例选取所有插入到 <div> 元素中的 <p> 元素:
div p
{
background-color:yellow;
}
子元素选择器
以下实例选择了<div>元素中所有直接子元素 <p> :
div>p
{
background-color:yellow;
}
子元素选择器与后代选择器的区别在于,子元素选择器仅对直接子元素有效,如果进行了一层嵌套,样式就不再有效。
属性选择器
下面的例子是把包含标题(title)的所有元素变为蓝色:
[title]
{
color:blue;
}
属性和值选择器
下面的实例改变了标题title='runoob'元素的边框样式:
[title=runoob]
{
border:5px solid green;
}
常用的选择器就介绍完了。
属性
注:布局相关的属性将在下一节进行讲解,这里只进行样式属性的讲解
Background 背景
该CSS 属性定义背景效果:
- background-color 用于设置背景色
- background-image 用于设置背景图片
- background-repeat 用户设置背景重复填充,分为不重复、x方向重复、y方向重复、xy方向均重复
- background-attachment 用于设置背景的鼠标滚动样式,分为随滚动移动,不随滚动移动,从父元素继承
- background-position 用于设置背景的位置
Text 文本
文本不是属性,是界面元素,该元素主要进行以下几种属性的设置:
Color : 字体颜色
Text-align : 文本对齐方式
text-indent :首行文本缩进
font-family : 字体设置
font-size:字体大小
text-decoration 文字装饰,最常用的场景就是给链接a去掉下划线
border 边框
border-style 边框样式常用值为无边框及实线边框
border-width 边框宽度
border-color 边框颜色
另外,如果需要,我们也可通过来进行某一条边的属性设置
Border-(left/right/top/bottom)-(color/style/width)
例如:
|
设置元素的右边框的颜色。 |
Margin / padding 外边距 / 内边距
除了可以如上图,对每个方向的外边距/内边距进行设置外,还能够直接通过margin/padding进行多个方向的设置
margin属性可以有一到四个值。
- margin:25px 50px 75px 100px;
- 上边距为25px
- 右边距为50px
- 下边距为75px
- 左边距为100px
- margin:25px 50px 75px;
- 上边距为25px
- 左右边距为50px
- 下边距为75px
- margin:25px 50px;
- 上下边距为25px
- 左右边距为50px
- margin:25px;
- 所有的4个边距都是25px
Padding也可通过一样的方式进行设置。
Size 尺寸
尺寸的属性主要是宽度/高度/最大宽度/最大高度/最小宽度/最小高度,分别对应如下属性
|
属性 |
描述 |
|
设置元素的高度。 |
|
|
设置行高。 |
|
|
设置元素的最大高度。 |
|
|
设置元素的最大宽度。 |
|
|
设置元素的最小高度。 |
|
|
设置元素的最小宽度。 |
|
|
设置元素的宽度。 |
Display/Visibility 可见性
这两个属性都可控制控件的可见性,主要值如下:
Display:none 控件不可见,不占用布局
Visibility:hidden 控件不可见,占用布局
Display:inline 在一行内显示相关控件
Display:block 控件作为块元素显示
Float: 浮动
当窗体尺寸变化时,float属性将帮助控件进行移动来完成重新布局。
Demo实战:网站导航栏
在开始之前我们需要知道一些有关链接的状态
a:link {color:#FF0000;} /* 未访问的链接 */
a:visited {color:#00FF00;} /* 已访问的链接 */
a:hover {color:#FF00FF;} /* 鼠标划过链接 */
a:active {color:#0000FF;} /* 已选中的链接 */
首先我们需要在html中添加一个列表,如下
<ul>
<li><a href="#home">主页</a></li>
<li><a href="#news">新闻</a></li>
<li><a href="#contact">联系</a></li>
<li><a href="#about">关于</a></li>
</ul>

很显然不够美观,我们需要对它的样式进行调整
ul {
list-style-type: none;
margin: 0;
padding: 0;
width: 200px;
background-color: #f1f1f1;
}
li a {
display: block;
color: #000;
padding: 8px 16px;
text-decoration: none;
}
即可得到如下视图

这里我们得给列表添加鼠标悬停的效果,这里用到的是a:hover.
li a:hover{
background-color: #555;
color: white;
}

对于选中项,我们可以通过设置其class = “active”来实现。
li a.active {
background-color: #4CAF50;
color: white;
}
<ul>
<li><a class = “active” href="#home">主页</a></li>
<li><a href="#news">新闻</a></li>
<li><a href="#contact">联系</a></li>
<li><a href="#about">关于</a></li>
</ul>

具体实现怎么进行选中项的切换,将在下下节javascript后进行讲解。
HTML前端入门归纳——样式的更多相关文章
- HTML前端入门归纳——控件
本人一直在从事.net的开发,界面都是采用的WPF,近期花了一个多月进行HTML前端的学习,在这里呢进行学习总结和归纳. 本系列将主要分为4个模块: 控件 样式 布局 JavaScript 根据多年W ...
- HTML前端入门归纳——布局
本人一直在从事.net的开发,界面都是采用的WPF,近期花了一个多月进行HTML前端的学习,在这里呢进行学习总结和归纳. 本系列将主要分为4个模块: 控件 样式 布局 JavaScript 根据多年W ...
- HTML入门归纳--JavaScript
本人一直在从事.net的开发,界面都是采用的WPF,近期花了一个多月进行HTML前端的学习,在这里呢进行学习总结和归纳. 本系列将主要分为4个模块: 控件 样式 布局 JavaScript 根据多年W ...
- 结合个人经历总结的前端入门方法 (转自https://github.com/qiu-deqing/FE-learning)
结合个人经历总结的前端入门方法 (https://github.com/qiu-deqing/FE-learning),里面有很详细的介绍. 之前一直想学习前端的,都不知道怎么下手都一年了啥也没学到, ...
- web前端入门:一小时学会写页面
一小时学会写页面 作为一个懒癌晚期患者,总是习惯找各种简单的解决问题的方法,也习惯性把问题简单化,所以今天想分享给大家简单的web前端入门方法.既然题目已经定了一个小时那么废话就不多说了,计时开始 1 ...
- 前端入门3-CSS基础
本篇文章已授权微信公众号 dasu_Android(大苏)独家发布 声明 本系列文章内容全部梳理自以下四个来源: <HTML5权威指南> <JavaScript权威指南> MD ...
- Web前端入门教程之浏览器兼容问题及解决方法
JavaScript 被称为JS,是作为浏览器的内置脚本语言,为我们提供操控浏览器的能力,可以让网页呈现出各种特殊效果,为用户提供友好的互动体验.JS是Web前端入门教程中的重点和难点,而浏览器兼容性 ...
- 前端入门系列之HTML
前端入门系列之HTML 超文本标记语言 (英语:Hypertext Markup Language,简称:HTML ) 是一种用来结构化 Web 网页及其内容的标记语言.网页内容可以是:一组段落.一个 ...
- 新浪、腾讯、淘宝为何如此重视Web前端?前端入门容易吗?
为什么新浪.搜狐.网易.腾讯.淘宝等在内的各种规模的IT企业,都对web前端越来越重视了呢?小编为您揭晓答案! web前端的由来 以前会Photoshop和Dreamweaver就可以制作网页.随着时 ...
随机推荐
- centos7最小版配置
配置启用dns cd /etc/sysconfig/network-scripts/ vi ifcfg-ens33 # 修改ONBOOT为yes ONBOOT=yes 重启系统 reboot 安装ne ...
- jpa报错object references an unsaved transient instance
错误原因: 在调用hibernate存储数据时,需要将数据库中表对应的持久类对象作为参数传递.如果这时的对象中有其他的表字段属性并且是引用对象类型,那么这个属性必须是持久态或者是null的,瞬时态和脱 ...
- 使用word时在方块中打钩
☑ 方法一: 第一步: 输入:2611 第二步: 选中2611 第三步: 按Alt + X Get : ☑ 同样:用2610代替2611会得到☐ ☐2610 ☑2611 方法二 1.选择[插入]-- ...
- spring整合websocket,如何在服务端依赖注入service
1.在pom.xml文件中添加jar包: <properties> <spring.version>4.0.5.RELEASE</spring.version> & ...
- UVa - 12050 Palindrome Numbers (二分)
Solve the equation: p ∗ e −x + q ∗ sin(x) + r ∗ cos(x) + s ∗ tan(x) + t ∗ x 2 + u = 0 where 0 ≤ x ≤ ...
- Notepad++ 个人洁癖
插件: JSON Viewer 可以以树的形式查看JSON,同时可以格式化JSON,增加缩进. NppExport 可以高亮复制 下载地址: https://github.com/chcg/NPP_E ...
- SQLserver 数据类型转换
1:CAST 方法 CAST(任何有效的表达试 AS 要转换的数据类型 [数据类型的长度,可选]) 例:SELECT CAST(10000 as varchar(10)) SELECT CAS ...
- [POI2005]KOS-Dicing (最大流+二分)lg3425
题面https://www.luogu.org/problemnew/show/P3425 题面说赢的最多的人最少赢几场,肯定是向二分的方向思考 建立源点向每一场比赛连容量为1的边,从每场比赛向参赛两 ...
- Pandownload---windows下几乎无敌的网盘下载神器
近几天光顾着mac了,今天咱来聊聊Windows. 这个就不多说了,直接贴图. 网页版截图. 电脑版截图. 网页版2020.2.1的时候是失效的,别问我为什么不现在测试,用不着. 不用担心不知道密码, ...
- X shell安装 以及使用
X shell 百度搜索 X shell 然后下载软件 然后会进入主页面