从实战中学前端:html+css 实现漂亮的按钮

2023-11-09

按钮初体验

html 表示中作为按钮的标签有 button 和 input

<!-- type="button"可省,省略时表示type="submit" -->
<button type="button">按钮</button>

<!-- 也可为type="submit" 此时主要用在表单提交中(如登录时),此时type不能省略 -->
<input type="button" value="按钮" />

我们来看看默认的按钮效果: <button> 按钮 </button > 或 < input type="button" value="按钮" /><!-- 为了简单,本篇就默认前一种 -->

默认的按钮太丑了有木有?肿么让它变得好看点呢?此时就是 css 展示它的功法了。

css 神奇初见

css 全称为层叠样式表,简单说来就是实现网页的效果,如按钮美化。

<button style="width: 80px;height: 40px;background: #4CAF50;- border: none;">按钮</button>

变漂亮点了对不对?让我们来解释一下:

  • style="" style 翻译成中文就是样式,引号里边的内容就表示这个按钮的样式。 注:给 Html 元素设置 css 样式有三种,此为第一种,后面再介绍

  • width: 80px;style 里边的样式格式为: 属性:值;这里表示宽度为 80 个像素点,后边的 height 就很容易明白表示高度为 40px 了。

  • background: #4CAF50; 设置按钮背景颜色为 #4CAF50(16 进制),这里你可以设置为任何你喜欢的颜色。

  • border: none; 取消按钮的边框

变化一下按钮样式

<button style="width: 80px;height: 40px;background: #4CAF50;border: none;color: white;font-size: 16px;">按钮</button>
<button style="width: 80px;height: 40px;background: none;border: #4CAF50 solid 1px;">按钮</button>

我们发现左边按钮的文字颜色变了,大小也变了,怎么实现的呢? 很容易发现,我在 style 中设置了 color: white;font-size: 16px; 没错就是 color 和 font-size,再看右边一个按钮,我设置了背景为 none,边框 border 为 1 像素,solid 样式,颜色值跟左边背景色一样。

css 使用方式之二

有没有发现上边随着 style 样式加多,代码会变得很长,为了解决这个问题(当然此种方式目的不只是这个),我们使用第二种方式:

<!-- 首先在head中加入一下代码 -->
<style>
			button{
				width: 80px;
				height: 40px;
				background: #4CAF50;
				border: none;
				color: white;
				font-size: 16px;
			}
		</style>

<!-- 第二步:按钮代码 -->
<button>按钮</button>

最终效果:

肿么样,有木有很神奇?这样子的按钮代码看起来就简洁多了,这就是所谓的 css 第二种使用方式,即把它放在 style 标签中,通常是放在 head 里面。

第二种使用方式的:button 称之为选择器,任何 html 标签都可以用作选择器,除此之外还有很多其他的选择器,常用的有 id 选择器和 class 选择器:

#btnSubmit{…}
.btnCancel{…}

其中 id 和 class 都是 html 标签的属性,css 的第一种用法的 style 就是一种属性。

具体实例:

/*这里边是css中的注释,浏览器会将其忽略*/
/*class*/
.btn{
    padding: 10px 20px;
    cursor: pointer;/*使鼠标放上边显示手指形状*/
    font-size: 16px;
    margin: 4px 2px;
    text-align: center;/*文本居中显示*/
    text-decoration: none;/*取消文本的默认修饰,如取消链接默认的下划线*/
    display: inline-block;
}
/*id*/
#active_a{
    text-decoration: none;
    color: #4CAF50;
    font-weight: bold;
}

css 第三种使用方式

另外建立一个 xxx.css 文件,将 css 代码放在这个文件里边,然后在页面中引入:

<link rel="stylesheet" href="xxx.css" />

注:放在单独的 css 文件里边的 css 代码不需要放入 style 标签里。

<!-- 直接类似于这样就行 -->
.dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}
/* 鼠标移上去后修改下拉菜单链接颜色 */
.dropdown-content a:hover {background-color: #f1f1f1}

/* 在鼠标移上去后显示下拉菜单 */
.dropdown:hover .dropdown-content {
    visibility: visible;
    opacity: 1;
    height: 200px;
    min-width: 160px;
}

附完整的样式及使用

button.css

.btn{
    padding: 10px 20px;
    cursor: pointer;
    font-size: 16px;
    margin: 4px 2px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
}
.btn-disabled{
	opacity: 0.6;
	cursor: not-allowed;
}
.btn-default{
    border: 1px solid #e7e7e7;
}
.btn-green{
    border: 1px solid #4CAF50;
}
.btn-radius{
    border-radius:5px;
}
.btn-red{
    border: 1px solid #f44336;
}
.btn-default,.btn-green,.btn-red{
	border-radius:5px;
	background: none;
	z-index: 3000;
}
.btn-bg-green{
	background-color: #4CAF50;
}
.btn-bg-blue{
	background-color: #008CBA;
}
.btn-bg-red{
	background-color: #f44336;
}
.btn-bg-gray{
	background-color: #e7e7e7; 
	color: black;
	border: none;
}
.btn-bg-blank{
	background-color: #555555;
}
.btn-bg-pink{
	background-color: #FFC1C1;
}
.btn-bg-blue,.btn-bg-green,.btn-bg-red,.btn-bg-blank,.btn-bg-pink{
	border: none;
	color: white;
}

button.html 部分

<h3>按钮</h3>
		<button class="btn btn-default">默认</button>
		<button class="btn btn-bg-pink">粉色</button>
		<button class="btn btn-green">绿色</button>
		<button class="btn btn-bg-green">绿色</button>
		<button class="btn btn-bg-blue btn-radius">蓝色</button>
		<button class="btn btn-bg-red">红色</button>
		<button class="btn btn-bg-gray">灰色</button>
		<button class="btn btn-bg-blank">黑色</button>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从实战中学前端:html+css 实现漂亮的按钮 的相关文章

  • 这个 CSS 选择器是什么? [类* =“跨度”]

    我在 Twitter Bootstrap 中看到了这个选择器 show grid class span background color eee text align center border radius 3px min height
  • 使用 PHP 将 class="active" 添加到活动页面

    动态标头 CSS 类更改为活动使用 PHP 目录 我想要的班级 li 在活动目录下更改标签 现在 每个指南都向我展示了当您的页面等于它时如何执行此操作 但我想更改 这 li li 取决于我所在的目录 例如 如果说我在 http exampl
  • 如何实现右边缘倾斜的 div? [复制]

    这个问题在这里已经有答案了 我几天来一直在寻找使 div 的右边缘倾斜 45 度的代码 这是我特别想要得到的图像示例 似乎有很多 倾斜边缘 div 的示例 但我找不到任何具有特定右侧倾斜的示例 我花了很多时间试图改变其他人的代码 但结果却一
  • 如何使用 jQuery 在弹出窗口中预览输入类型=“文件”中选定的图像? [复制]

    这个问题在这里已经有答案了 在我的代码中 我允许用户上传图像 现在我想在同一个弹出窗口中将所选图像显示为预览 我怎样才能使用 jQuery 做到这一点 以下是我在弹出窗口中使用的输入类型 HTML 代码
  • 没有嵌套容器的桌面和移动 Flexbox 布局

    我有 3 个 div 它们必须按移动布局的特定顺序排列 但我必须将第 2 个 div 作为桌面布局的侧边栏 所以对于移动设备 分区1 分区2 分区3 对于桌面 分区1 div2 分区3 在桌面布局中 div 2 有阴影背景 因此必须是父级的
  • iFrame 未扩展至 100% 高度

    我有这个下面的html 我希望 iFrame 能够 100 覆盖屏幕的其余部分 我在高度属性中尝试了 100 和 但不起作用 这是为什么 谢谢 div img height 35 width 84 alt Kucku src Content
  • CSS 中 calc() 的结果是什么

    我们现在已经开始使用calc 在CSS中 用于设置计算结果的宽度 例如 div div div div parent width 100px calcWidth width calc 100 3px height 100px backgro
  • 动态表中每个按钮的 Jquery-Ui 对话框表单

    我正在生成一个 HTML 表 每行都有一个按钮 必须打开 Jquery ui 对话框表单 The table table class table table reporting table condensed table striped t
  • 如何为 HTML5 音频元素制作加载栏?

    我正在尝试为 HTML5 音频元素制作一个加载栏 显示加载 缓冲的百分比 对于视频标签 可以使用以下方法进行计算 video buffered end 0 video duration 但我无法让它与音频标签一起使用 它只是返回一个固定值
  • 显示带有背景颜色的百分比条

    例如 如果我有一个包含两列和 2 行的表 Col1 Percentage 50 50 70 70 如何用代表 COl1 值的颜色填充百分比列 像这样的东西 您可以使用具有两个紧接着的停止点的线性渐变 percentageFill heigh
  • 使组合高度等于浏览器窗口的高度

    http featuredfotografer com http featuredfotografer com Codemirror div 与 header div 结合占用的高度超过了浏览器的高度 我怎样才能使它们的总高度达到浏览器窗口
  • 仅水平 CSS 视差效果,层数大于 100vw

    如何用水平引导网站仅 CSS 视差效果 要求 仅 CSS 视差 父层必须具有宽度 高度 100vw 100vh 子层的宽度 高度必须 gt 100vw 100vh child layers must visually align 100 w
  • 如何在 div 容器内的元素之间留出空间

    我有一个弹性容器 它将由元素动态填充 容器没有固定宽度 I use max width max content 并且可以包含我想要的任意数量的元素 问题是我需要这些元素之间的间距 但不需要元素和容器之间左侧和右侧的间距 当然我可以用 ele
  • 从网站存储数据的最简单方法(在服务器端)

    我有一个非常简单的网站 实际上是单页 有一个输入字段和一个按钮 我需要将用户提交的数据存储在服务器端的某个位置 完美的方法可能是简单的文本文件 并在每次单击按钮后附加新行 日志文件也可以 据我了解 JavaScript 本身是不可能的 我在
  • React Native 上的文本缩进

    我需要缩进 React Native 段落的第一行 但使用常见的csstext indent财产 textIndent 与 React Native 不兼容 伪元素选择器也不兼容 例如 first line 有什么方法可以做到这一点而不用将
  • Symfony 2 使用 CSS 设置背景图片

    I want to put a background image for a menu in symfony But I can t figure out how to do it I managed to style a lot of t
  • xpath:选择中断标签之前和之后的文本节点

    考虑以下因素 混合 br and br text1 br text2 br text3 br text4 br text5 如何找到每个文本节点 我正在考虑符合 br 标签之前或之后的条件的东西 但不确定是否 br and br 在 xpa
  • iOS Safari Mobile 禁用上一个和下一个选择输入

    上周五我发现了关于此问题的类似问题 但似乎无法再次找到它 如果有人能指出我正确的方向 那就太好了 本质上我在一个页面上有多个选择菜单 第一个在加载时填充 第二个在第一个选择时填充 够简单的 但是 在 iOS 设备中 当您点击选择元素时 它会
  • `ie9` - contenteditable false 在父级可编辑时不起作用

    我正在尝试制作内容可编辑和不可编辑的容器 用户可以通过 3 种方式使用它 他们可以将内容与non editable 他们可以将内容与editable 他们可以在不选择其中之一的情况下放置内容 可编辑 我正在努力实现以下目标 content
  • 跨浏览器:禁用输入字段的不同行为(文本可以/不能复制)

    我有一个被禁用的输入 html 字段 在某些浏览器 Chrome Edge Internet Explorer 和 Opera 中可以选择并复制文本 但至少在 Firefox 中这是不可能的 您可以通过在不同浏览器中执行以下代码来测试

随机推荐