我有一个Wordpress网站,使用
显示帖子的内容<?php the_content(); ?>
在内容中存在图像和文本,所有图像和文本都在&lt; p>标签
我想以不同方式设置图像和文本的边距/填充。我可以定位图像但是当我将样式应用于文本时,它们也会影响图像。
我能想到的唯一选择是使用 - 边距(但稍后会引起问题)并将所有文本放在块引号中,但这将删除该功能以供将来使用。
我可以从the_content中取出图像和/或文字并以另一种方式显示它们吗?
HTML - 目前
<div class="row">
<?php the_content(); ?>
</div><!-- /row -->
答案 0 :(得分:0)
您可以通过多种方式完成此操作: 我最喜欢的是以下内容: 让我们说你有一个带有css类的div(即:内容包装器) 所以它看起来像这样:
<div class="contentWrapper">
My amazing conent <img src="amazing.jpg"/> <p>testing paragraph</p>
</div>
因此,在此示例中,您可以使用简单的css选择器对contentWrapper下的元素进行任何更改,即:。
.contentWrapper img, .contentWrapper p{
margin-right: 5px;
}
另一种 - 但更脏的方法是使用正则表达式来替换某些标签。 这根本不是一个好习惯,所以我不知道有什么例子。
祝你好运!答案 1 :(得分:0)
基本上有两种理智的方式:
修改现有的CSS并对其进行调整以更精确地定位元素和类。这是更容易的方法。
将the_content();
的输出捕获到变量中,然后使用preg_replace()
等修改内容。或者在PHP中使用适当的DOM解析器来执行相同的操作。这里有更多的工作。
(使用Javascript在加载后修改DOM。不太优雅的方法。)
答案 2 :(得分:0)
使用<p>
提取图片,移除function filter_content_images($content) {
return preg_replace('/<p>\\s*?(<a .*?><img.*?><\\/a>|<img.*?>)?\\s*<\\/p>/s', '<div class="content-image">\1</div>', $content);
}
add_filter('the_content', 'filter_content_images');
标签并将其替换为其他内容。
using Microsoft.Phone.Tasks;
CameraCaptureTask cameraCaptureTask;
cameraCaptureTask = new CameraCaptureTask();
cameraCaptureTask.Completed += new EventHandler<PhotoResult>(cameraCaptureTask_Completed);
cameraCaptureTask.Show();
void cameraCaptureTask_Completed(object sender, PhotoResult e)
{
if (e.TaskResult == TaskResult.OK)
{
}
}
这将删除它们并替换为迷你