无法使用umbraco内联添加背景图像

时间:2015-11-07 10:12:46

标签: umbraco umbraco7

我正在尝试将媒体选择器中的图像添加到我的网站。它需要在我的标题中作为内联作为背景图像放置。但它不会出现在我的网页上。

标题代码:

...
let tap = UITapGestureRecognizer(target: self, action: Selector("someAction"))
tap.numberOfTapsRequired = 1
image.userInteractionEnabled = true
image.addGestureRecognizer(tap)
...
func someAction() {
    ...
}

是的Alias是:backgroundimage

如何在网站上制作视觉效果?

2 个答案:

答案 0 :(得分:0)

Umbraco.TypedMedia(Model.Content.GetPropertyValue("backgroundimage"))将返回IPublishedContent个对象。您需要在内联代码中呈现它的Url属性。

试试这个:

@{
    var backgroundImage = Umbraco.TypedMedia(Model.Content.GetPropertyValue("backgroundimage"))
}
<header style="width: 100%; height: 100%; background-image: url('@backgroundImage.Url')">
</header>

如果您想验证您是否拥有有效图像(即用户指定了一张图片),您可以更进一步并执行此操作:

<header 
 style="width: 100%; height: 100%; @(backgroundImage == null ? null : "background-image: url('" + backgroundImage.Url + "')"
>
</header>

答案 1 :(得分:0)

我已经尝试了我能找到的每一种引用方式,并且对我有用的唯一的事情是将整个url字符串加上它的引号放入一个字符串变量中,然后将该变量单独放在background-image声明中。其他任何东西都剥离了我的网址编码。

string BkgImage = '"' + mediaItem.Url + '"';
 <a href="@post.Url" class="post-news__thumb-bkg" style="background-image: url(@BkgImage)">
  <img class="post-news__spacer" src="~/Images/spacer.gif" alt="@alt" />
 </a>