专业汉语词典知识平台,分享汉字词语知识、历史文学知识解答!

励北网
励北网

css透明度怎么设置,css透明度设置方法及常见问题解析

来源:小易整编  作者:小易  发布时间:2022-12-30 04:34
摘要:css透明度怎么设置,css透明度设置方法及常见问题解析怎样在CSS样式中设置背景的透明度,下面给出一个具体的实例。把类为box的层设为透明。 透明度设置 html, body...

css透明度怎么设置,css透明度设置方法及常见问题解析

怎样在 CSS 样式中设置背景的透明度,下面给出一个具体的实例。把类为 box 的层设为透明。

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>透明度设置</title>    <style>        html,        body {            width: 100%;            height: 100%;            padding: 0;            margin: 0;        }        .box {            width: 200px;            height: 200px;            margin: auto;            border: 1px solid #999;            background-color: #f99;            opacity: 0.3;        }</style></head><body>    <div class="box"></div></body></html>

注:其中 background:#f99;  opacity:0.3;为关键代码,当 opacity 值为1时,表示完全不透明,为0时表示完全透明。

opacity: 0.3;这是“最重要的”,因为它是在 CSS 的现行标准。这将在 Firefox,Safari 和 Opera 的大多数版本的工作。这将是你所需要的一切如果所有的浏览器都支持目前的标准。当然是他们不会错。

filter:alpha(opacity=30);这一个是针对IE浏览器

-moz-opacity:0.3;你需要这一个支持老版本的 Mozilla 浏览器如 Netscape Navigator。

-khtml-opacity: 0.3;这是旧版本的 Safari(1.×)当渲染引擎是使用仍被称为 kthml,而不是目前的WebKit。

效果:

css透明度怎么设置,css透明度设置方法及常见问题解析

CSS 中用 javascript 或 jquery 实现透明度的改变

如何用 CSS 实现背景半透明效果?我们一般的做法是用两个层,一个用于放文字,另一个用于做透明背景,因为透明滤镜的效果会影响到里面的内容。

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>透明度设置</title>    <style>        html,        body {            width: 100%;            height: 100%;            padding: 0;            margin: 0;        }        #box {            width: 200px;            height: 200px;            margin: auto;            border: 1px solid #999;            background-color: #f99;            opacity: 1;        }</style>    <script>        _window.onload = function() {            let box = document.getElementById("box");            box.onclick = function() {                box.style.opacity = "0.4"; // 针对所有通用浏览器                box.style.filter = "alpha(opacity=40)"; // 针对IE浏览器            }        }</script></head><body>    <div id="box">这里是文字部分!</div></body></html>

效果:

css透明度怎么设置,css透明度设置方法及常见问题解析

jQuery改变透明度实现如下

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>透明度设置</title>    <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>    <style>        html,        body {            width: 100%;            height: 100%;            padding: 0;            margin: 0;        }        #box {            width: 200px;            height: 200px;            margin: auto;            border: 1px solid #999;            background-color: #f99;            opacity: 1;        }</style>    <script>        $(document).ready(function(){        // $(function() {            $("#transparent").click(function () {            $("#box").css("opacity", "0");            })            $("#reset").click(function () {            $("#box").css("opacity", "1");            })        })</script></head><body>    <button id="transparent">设置为透明</button>    <button id="reset">重置透明度</button>    <div id="box">这里是文字部分!</div></body></html>

效果(重置):

css透明度怎么设置,css透明度设置方法及常见问题解析

效果(透明):

css透明度怎么设置,css透明度设置方法及常见问题解析

CSS透明技巧汇总

一、旧的Opacity设置
以下代码是 Firefox 和 Safari 旧版本所需的透明度设置:

#myElement {  -khtml-opacity: .5;  -moz-opacity: 0.5;  }-khtml-opacity 设置是针对旧版本的Webkit渲染引擎,这种专用属性现在已经过时了,除非你还有需要兼容Safari 1.x.的用户。

第二行使用专用属性 -moz-opacity是 为了兼容 Mozilla 渲染引擎的早期版本,以及追溯到 Netscape Navigator。Firefox 0.9 以后就不要求使用 -moz-opacity 属性,Firefox 3.5(现在使用 Gecko 引擎)已经不在支持这个属性。
二、在Firefox, Safari, Chrome和Opera下的CSS透明度 
以下代码是除了IE外的所有当前浏览器的最简单,最新的不透明度设置的CSS语法:

#myElement { opacity: 0.7; }

上述语法将设置一个元素为70%不透明(或30%透明)。设置opacity:1将使元素不透明,而设置opacity:0将使得元素完全不可见。你 只要记住“opacity”等同于“不透明”就很容易记住了,opacity值越小就越接近透明。
opacity属性可以精确地小数点后两位,所以值取".01"和".02"实际上是不同的,虽然可见度很难被发觉。一般情况下,精确到一位就可以了,取值如".3"或".7"。

三、IE下的CSS透明度

IE下照旧有别于其他浏览器,并且目前也有三个不同版本的IE在广泛使用,透明度设置是不同的,有时需要额外的CSS来控制:

#myElement {      filter: alpha(opacity=40);  }

上面的CSS使用专用的filter属性来设置IE6-8透明度。对于IE6和IE7需要注意:为了使得透明设置生效,元素必须是“有布局”。一个元素 可以通过使用一些CSS属性来使其被布局,有如width和position。

另外一个设置IE8的CSS透明度的方法语法如下:

#myElement {     filter: progid:DXImageTransform.Microsoft.Alpha(opacity=40);/* 第一行在IE6, IE7和IE8下有效 */-ms-filter:  "progid:DXImageTransform.Microsoft.Alpha(opacity=40)";/*第二行仅在IE8下有效 */}

第一行代码针对当前所有IE版本,第二行仅针对 IE8。
注意两行代码的不同之处:在第二行代码中,在filter属性前跟着-ms-前缀,并且属性值有加引号,这些都是语法所必须的。

说实在,有了之前一个例子中用 alpha(opacity=40)的语法来作用于任何版本的 IE 下的任何有布局的元素之后,并不能确定是否还有必要用”progid“的方法

CSS 如何值改变背景透明的,不改变子元素透明度?

一般情况下,我们可以使用 css 的 opcity 属性改变某个元素的透明度,但是其元素下的子元素的透明度也会被改变,即使对子元素重新定义也没有用,例如:

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>透明度设置</title>    <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>    <style>        html,        body {            width: 100%;            height: 100%;            padding: 0;            margin: 0;        }        #box {            width: 200px;            height: 200px;            margin: auto;            border: 1px solid #999;            background-color: #f99;            opacity: 0.5;        }</style>    <script>        $(document).ready(function(){        // $(function() {            $("#transparent").click(function () {            $("#box").css("opacity", "0");            })            $("#opacitas").click(function() {            $("#box").css("opacity", "1");            })            $("#reset").click(function () {            $("#box").css("opacity", "0.5");            })        })</script></head><body>    <button id="transparent">设置为透明</button>    <button id="opacitas">设置为不透明</button>    <button id="reset">重置透明度</button>    <div id="box">这里是文字部分!</div></body></html>

效果: 

css透明度怎么设置,css透明度设置方法及常见问题解析

文字元素的透明度也会是 0.4。于是想一想,如果有方法只改变背景的透明度就能解决此问题了。
方法1:使用一张透明的图片做背景可以达成效果,但是有没有更简单的方法呢?
方法2:使用 RGBA。

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>透明度设置</title>    <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>    <style>        html,        body {            width: 100%;            height: 100%;            padding: 0;            margin: 0;        }        #box {            width: 200px;            height: 200px;            margin: auto;            border: 1px solid #999;            background-color: rgba(255, 144, 144, 0.5);        }</style>    <script>        $(document).ready(function(){        // $(function() {            $("#transparent").click(function () {            $("#box").css("background-color", "rgba(255, 144, 144, 0)");            })            $("#opacitas").click(function() {            $("#box").css("background-color", "rgba(255, 144, 144, 1)");            })            $("#reset").click(function () {            $("#box").css("background-color", "rgba(255, 144, 144, 0.5)");            })        })</script></head><body>    <button id="transparent">设置为透明</button>    <button id="opacitas">设置为不透明</button>    <button id="reset">重置透明度</button>    <div id="box">这里是文字部分!</div></body></html>

效果:

css透明度怎么设置,css透明度设置方法及常见问题解析

CSS在设置了透明度的层里,怎么让里面的层不透明

方法:

如果是颜色,完全可以用背景色透明 rgba 来代替 opacity,
如果是图片,就用 ps 简单处理一下即可。
opacity 这个属性指定的透明是包括里面的元素的,不可能只有外面透明,里面不透明

css里边写透明样式怎么写

如果是用样式的话需要用到滤镜

style="filter:Alpha(Opacity=opacity, FinishOpacity=finishopacity,Style=style, StartX=startX,StartY=startY,FinishX=finishX,FinishY=finishY)"

说明:
Opacity:起始值,取值为0~100, 0为透明,100为原图。
FinishOpacity:目标值。
Style:1或2或3
StartX:任意值
StartY:任意值

语法如下:

filter:Alpha(Opacity="0",FinishOpacity="75",Style="2")

但是因为滤镜的兼容性问题,最好是不要用,可以用 ps 做图的时候,把背景调一下透明度后导成 png 格式的图片就行了,如果透明的背景颜色一样的话,那么你可以切成 1px*1px 大小的 png 图片平铺,gif 只支持透明度 100% 也就是完全透明的图片,半透明的不支持,而 png 格式的图片则不存在什么问题,唯一会有问题的地方就只是 IE6 不兼容透明 png 格式而已。


本文地址:百科问答频道 https://www.neebe.cn/wenda/886524.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


百科问答
小编:小易整编
相关文章相关阅读
  • 如何设置PS图层不透明度

    如何设置PS图层不透明度

    PS是一款功能强大的图片编辑软件,有些新用户不知道如何设置PS图层不透明度,接下来小编就给大家介绍一下具体的操作步骤。具体如下:1.首先第一步打开电脑中【PS】软件,导入需要编辑的图片,根据下图箭头所指,选中图层。2.方法一:根据下图所...

  • css布局技巧,css常见布局汇总

    css布局技巧,css常见布局汇总

    css布局技巧,css常见布局汇总要点速看网页开发基本思路:确定版心--》分析行模块--》分析列模块;如果一行当中有多个模块,一定要放在同一个父模块中;列模块首先可以先给宽高背景颜色,实例化盒子;常见布局:两栏/三栏/等高/粘带推荐flex...

  • css选择器有哪些,css选择器怎么用

    css选择器有哪些,css选择器怎么用

    css选择器有哪些,css选择器怎么用 CSS选择器又被称为CSS样式属性、CSS属性选择器,CSS中的“选择器”指明了“{}”中的“样式”的作用对象,也就是“样式”作用于网页中的哪些元素;常用选择器可分为标签名选择器、类选择器、id选择器...

  • CSS图片透明度怎么设置,CSS 透明度设置方法

    CSS图片透明度怎么设置,CSS 透明度设置方法

    CSS图片透明度怎么设置,CSS透明度设置方法怎样在CSS样式中设置背景的透明度怎样在CSS样式中设置背景的透明度,下面给出一个具体的实例。把类为box的层设为透明。 透明度设置 html...

  • css教程,0基础入门css教程

    css教程,0基础入门css教程

    通过使用CSS我们可以大大提升网页开发的工作效率!在我们的CSS教程中,您会学到如何使用CSS同时控制多重网页的样式和布局。1.CSS简介CSS是一种定义样式结构如字体、颜色、位置等的语言,被用于描述网页上的信息格式化和显示的方式。CSS样...

  • csshover怎么用,csshover用法教程

    csshover怎么用,csshover用法教程

    csshover怎么用,csshover用法教程1.实现效果在这里插入图片描述2.实现步骤定义一个宽高为300px的父容器.box{position:relative;width:300px;height:300px;}父容器中添加...

  • css样式表有哪几种,css样式表介绍

    css样式表有哪几种,css样式表介绍

    css样式表有哪几种,css样式表介绍层叠样式表(英文全称:CascadingStyleSheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰...

  • css3渐变属性,css3渐变教程

    css3渐变属性,css3渐变教程

    css3渐变属性,css3渐变教程好程序员web前端教程之CSS3渐变,CSS3渐变(gradient)可以让你在两个或多个指定的颜色之间显示平稳的过渡。以前,你必须使用图像来实现这些效果,现在通过使用CSS3的渐变(gradients)即...

  • 周排行
  • 月排行
  • 年排行

精彩推荐