问题标签 [dropshadow]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
583 浏览

html - css页脚的问题

我的网页有问题。

我使用 min-height 属性将页脚放置在页面底部(如果内容不够长)和内容之后(如果内容比窗口长)。有很多教程描述了这种方法,我也是这样做的。

和其他一些代码。那么它工作正常。

当我创建两个额外的 div 以将阴影添加到容器 div 时,就会出现问题。我有:

我认为 html 和 body 高度保持 100%,left-shadow div 的 min-height 为 100%,right-shadow 和 container 的高度为 100%(我假设 100% 意味着 100% 的高度父元素)。

但是,它不起作用(在 Firefox 中,它在 Chrome 中起作用,我并不真正关心 IE),并且我尝试了各种组合以使其正确,但无济于事。任何帮助,将不胜感激。

编辑:(部分代码)

以及相关的CSS:

编辑2:所以我刚刚发现这个问题属于doctype。所以从现在开始,我会在正确的地方提问。但既然这已经结束了,我会要求人们无论如何都要做出回应,而不要进入应该在哪里发布问题。谢谢。

0 投票
4 回答
3112 浏览

iphone - 使用 Cocoa 向 PNG 添加投影

我有一些具有透明背景的 PNG,我想以编程方式添加阴影。我见过为方形物体添加阴影的例子,但还没有见过复杂形状的例子。

所以我认为我必须做的两个步骤是:

  • 隔离PNG形状
  • 在 PNG 后面绘制一个模糊、褪色和偏移的形状。

我没有太多在 Cocoa 中绘图的经验,所以任何关于从哪里开始的见解都将不胜感激!

截图:( 来源:iworkinprogress.com替代文字

0 投票
3 回答
8960 浏览

winapi - Win32:如何使阴影尊重非矩形分层窗口?

我通过添加WS_EX_LAYERED扩展样式创建了一个分层窗口:

Windows 将使用黑色作为色度键颜色值。我将留下一个黑色的大边框以使问题变得明显:

替代文字


构建窗口后,我告诉它使用黑色作为色度键颜色

现在弹出的分层窗口显示为部分透明:

替代文字


问题是最后一步。我想使用自 Windows XP 以来可用的CS_DROPSHADOW类样式来创建投影:

出现了投影,但是阴影包围了原来的矩形窗口,并且没有考虑到分层窗口提供的窗口透明度:

有谁知道我在某个地方错过了什么神奇的选项,可以让投影尊重非矩形分层窗口?


出现此问题的另一个示例是当您不包含 6px 填充/边距时。Windows® 主题绘制的提示窗口是非矩形的。这会在窗口透明的地方留下一个小的可见间隙,但不会出现投影:

替代文字

正如您从 Internet Explorer 的提示中看到的那样,Microsoft 已设法使其工作:

替代文字


仔细查看 Windowstooltips类提示窗口。使用SpyXX - 我可以获得它的窗口矩形和类样式:

SpyXX 说:

所以一切都指向窗口本身是 104x20 像素,在窗口本身之外有阴影。(这与 一致CS_DROPSHADOW。)

接下来我可以查看tooltips窗口类的样式:

有趣的是,它不使用CS_SAVEBITS( 0x800); 这对于小型、短暂的窗口很有用。

它也不使用CS_DROPSHADOW( 0x20000)。所以现在我想知道它是如何在自己的窗口之外绘制的?

注意:透明分层窗口被记录为区域的首选技术。

编辑: Windows 2000 出现了分层 Windows。CS_DropShadow 是随 XP 添加的。

0 投票
3 回答
5069 浏览

windows - 如何在窗外画画?

查看 Windows类提示窗口,我看到它在提示窗口的实际矩形之外tooltips绘制了阴影。

使用SpyXX - 我可以获得工具提示的窗口矩形和类样式:

您会注意到您看到的投影实际上位于正在绘制的窗口之外。我怎样才能在窗外画一个阴影,同时在窗外

注意阴影不是使用标准CS_DROPSHADOW类样式绘制的。我已经通过实验证实了这一点,并且还可以在SpyXX中查看窗口的类样式;它不使用CS_DROPSHADOW

那么我怎样才能在窗外画画呢?

注意:尝试在桌面上绘制 DC 已失效。来自 Greg Schechter 的重定向 GDI、DirectX 和 WPF 应用程序

在屏幕上绘图和读取 - Baaaad!

最后,由于我们在重定向主题,一个特别危险的做法是写入屏幕,或者通过使用 GetDC(NULL) 并写入,或者尝试做 XOR 橡皮筋线等。有两个写入屏幕不好的主要原因:

它很昂贵……写入屏幕本身并不昂贵,但它几乎总是伴随着从屏幕读取,因为在写入屏幕时通常会执行诸如 XOR 之类的读取-修改-写入操作。从显存表面读取非常昂贵,需要与 DWM 同步,并且会停止整个 GPU 管道以及 DWM 应用程序管道。
这是不可预测的……如果您以某种方式设法到达实际的主节点并对其进行写入,则无法预测您写入主节点的内容将在屏幕上保留多长时间。由于UCE不知道,它可能会在下一帧刷新时被清除,也可能会持续很长时间,这取决于屏幕上还需要更新什么。(无论如何,我们确实不允许直接写入主节点,正因为如此......如果您尝试访问 DirectDraw 主节点,例如,DWM 将关闭,直到访问应用程序退出)

0 投票
3 回答
40294 浏览

iphone - 带有圆角矩形和阴影的 UIView:阴影出现在矩形上方

我有一个 uiview 子类,我试图在其中绘制一个带有阴影的圆角矩形。虽然它绘制了两个元素,但我可以通过圆角矩形填充看到阴影。我是 CG 新手,所以我可能遗漏了一些简单的东西(尽管它似乎不是设置为 1 的填充的 alpha)。这是绘制矩形代码。

0 投票
1 回答
2296 浏览

wpf - WPF DropShadow 消失

Wpf 阴影消失。以下是如何重现。

在 xaml 垫中键入以下内容。

您应该会看到一些带有边框的文本,并且在边框周围有一个阴影。

现在将Margin="0,0,0,0"更改为Margin="0,300,0,0",并调整您的 xaml pad 窗口大小,以便您可以看到边框。在我的机器上,阴影现在消失了。

还有人看到这个吗?请帮忙。

0 投票
4 回答
1411 浏览

javascript - HTML/CSS:谷歌如何在他们的地图上创建这个阴影?

问题:Google 如何在 Google 地图上的垂直滚动条旁边创建阴影?

这是一个截图,准确地描述了我在说什么。

在此处输入图像描述

这似乎与浏览器(IE、Firefox、Chrome)和平台(Windows、Mac、Linux)无关。

0 投票
2 回答
1336 浏览

html - 投影中心专栏网站网页

如何向具有一个中心列的网站添加阴影效果?

我的意思的一些例子:

lala.com mint.com

0 投票
2 回答
1486 浏览

winapi - 如何在 Win 7 中使用 DropDownShadow 创建一个像 Sticky Notes 这样的窗口?

如何在 Windows 7 中创建像 Sticky Note 这样没有边框但具有下拉阴影效果的 Win32 窗口?

我曾尝试创建一个没有边框的 Win32 窗口(删除 ~WS_BORDER),但下拉效果阴影消失了。

任何想法?

最好的问候,扎克@Shine

0 投票
1 回答
1253 浏览

uiview - 为 OS 3.1 模拟 iPhone OS 3.2 中的 CALayer 阴影属性

CALayer 阴影属性(如 shadowOffset、shadowRadius、shadowColor)在 3.2 以下的 iPhone OS 版本中不可用,我想知道如何模仿该功能以用于 3.1 及以下版本。

我想用它来以一种干净的方式向 UIViews 添加阴影,以便以某种方式在图层级别绘制阴影,而不是通过在视图的-(void)drawRect:(CGRect)rect方法中绘制它,这需要缩小实际视图框架以适应阴影。(我在 SO 上找到的其他 UIView 阴影相关问题中已经提出了这种缩小方法)。

我在想分层的方法会更干净。例如,我尝试创建子类化 CALayer,向其中添加了一个单独的阴影层作为子层,但随后将绘制在 UIView 的 drawRect: 方法中绘制的任何内容之上,该方法将主层作为支持层。

我也尝试过实现子类 CALayer 的 drawInContext: 类似这样的东西,

但是随后阴影仍然被裁剪到上下文的当前裁剪边界框,这似乎是图层自己的框架。

我也有一些想法,将主图层的绘图重定向到一个子图层,该子图层将放置在另一个已绘制阴影的子图层之上。然后我可能会摆脱剪辑,阴影会最远。但我无法真正理解我将如何做到这一点,而且这并不是一个干净的方法。

关于如何解决这个问题的任何想法?只是为了弄清楚我的 UIView 阴影相关问题与我在 SO 上找到的其他问题有何不同;我不想缩小 UIView 的实际绘图框以适应阴影。我希望它以某种方式位于背景中的单独图层上,而不会被剪裁。