我可以定义使用降价就第一个类名?我可以定义使用降价就第一个类名?(Can I define a cl

2019-05-14 02:52发布

我可以定义使用降价就第一个类名? 如果是这样,怎么样?

Answer 1:

重复数据删除: 如何设置在降价的HTML类属性?


原生? 不是,但...

不,降价的语法不行。 您可以设置ID值额外通过与降价。

您可以使用普通的HTML ,如果你喜欢,并添加属性markdown="1"继续HTML元素内降价转换。 这就要求降价额外虽然。

<p class='specialParagraph' markdown='1'>
**Another paragraph** which allows *Markdown* within it.
</p>

可能的解决方案:(未经测试和用于<blockquote>

我发现下面的在线:

功能

function _DoBlockQuotes_callback($matches) {

    ...cut...

    //add id and class details...
    $id = $class = '';
    if(preg_match_all('/\{(?:([#.][-_:a-zA-Z0-9 ]+)+)\}/',$bq,$matches)) {
        foreach ($matches[1] as $match) {
            if($match[0]=='#') $type = 'id';
            else $type = 'class';
            ${$type} = ' '.$type.'="'.trim($match,'.# ').'"';
        }
        foreach ($matches[0] as $match) {
            $bq = str_replace($match,'',$bq);
        }
    }

    return _HashBlock(
        "<blockquote{$id}{$class}>\n$bq\n</blockquote>"
    ) . "\n\n";
}

降价

>{.className}{#id}This is the blockquote

结果

<blockquote id="id" class="className">
    <p>This is the blockquote</p>
</blockquote>


Answer 2:

原始的HTML实际上是在降价完全有效。 例如:

Normal *markdown* paragraph.

<p class="myclass">This paragraph has a class "myclass"</p>

只需确保HTML是不是一个代码块中。



Answer 3:

降价应该有这个能力,但事实并非如此。 相反,你不得不拥有特定语言的超集降价:

PHP: 降价超
红宝石: Kramdown , Maruku

但是,如果你需要真正的降价语法遵守,你坚持插入原始的HTML,这是不太理想的。



Answer 4:

如果您的环境是JavaScript中,用降价,它与插件一起降价-IT-ATTRS :

const md = require('markdown-it')();
const attrs = require('markdown-it-attrs');
md.use(attrs);

const src = 'paragraph {.className #id and=attributes}';

// render
let res = md.render(src);
console.log(res);

产量

<p class="className" id="id" and="attributes">paragraph</p>

的jsfiddle

注:请注意安全方面的允许您在降价属性时!

免责声明,我是降价-IT-ATTRS的作者。



Answer 5:

下面是kramdown以下@ Yarin的回答工作的例子。

A simple paragraph with a class attribute.
{:.yourClass}

参考: https://kramdown.gettalong.org/syntax.html#inline-attribute-lists



Answer 6:

如果你降价的味道kramdown,那么你可以设置CSS类是这样的:

{:.nameofclass}
paragraph is here

然后在你的CSS文件,设置这样的CSS:

.nameofclass{
   color: #000;
  }


Answer 7:

正如上面提到的降价本身让你挂在此。 但是,根据实施也有一些解决方法:

MD的至少一个版本认为<div>是块级标签,但<DIV>是文本。 然而,所有broswers不区分大小写。 这可以让你保持MD的语法简单,在添加的div容器标签的成本。

所以,下面是一种变通方法:

<DIV class=foo>

  Paragraphs here inherit class foo from above.

</div>

这种方法的缺点是输出代码有<p>包装标签<div>行(他们两个,第一,因为它不是与第二,因为它不匹配,没有浏览器fusses关于这个,我已经找到了,但代码将无法验证。MD往往放在备用<p>标签反正。

降价几个版本执行公约<tag markdown="1">在这种情况下MD会做,在标签内的正常处理。 上面的例子中变为:

<div markdown="1" class=foo>

  Paragraphs here inherit class foo from above.

</div>

弗莱彻的MultiMarkdown的当前版本允许属性遵循如果使用引用链接的链接。



Answer 8:

在超薄降价这样的:

markdown:
  {:.cool-heading}
  #Some Title

翻译为:

<h1 class="cool-heading">Some Title</h1>


Answer 9:

如果你只需要为Javascript目的的选择(像我一样),你可能只是想使用href属性,而不是一个classid

只是这样做:

<a href="#foo">Link</a>

降价不会忽视或删除href喜欢用class和id属性呢。

所以在你的Javascript或jQuery的,你可以再做:

$('a[href$="foo"]').click(function(event) {

    ... do your thing ...

    event.preventDefault();
});

至少,这工作在我的版本降价的...



文章来源: Can I define a class name on paragraph using Markdown?
标签: css markdown