Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Can I use a CSS class to style a wiki markup link?

Dee Scarano
Contributor
July 9, 2012

I'd like to style a wiki markup link inline using a class defined in the global CSS.

What I was expecting to be able to do in wiki markup is something like this:

[link text|http://link.com|class=classname]

If it helps make it clearer, the equivalent HTML for what I'm trying to do would be this:

<a href="http://link.com" class="classname">link text</a>

Any suggestions?

3 answers

1 accepted

1 vote
Answer accepted
SarahA
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
July 9, 2012

Hallo Dhyana

There are two ways I can think of:

I hope this helps. :)

Cheers, Sarah

Dee Scarano
Contributor
July 9, 2012

Thanks Sarah, I'm actually using Confluence 4.2 but the link is in a global styling area which is why the wiki markup.

I had thought of using the HTML macro but, upon checking the system plugins in the Confluence Admin console, I saw that the {html} macro has been superceded by {html-xhtml} so I'll give that a go.

Thanks so much.

0 votes
Steffen Heller
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
August 2, 2012

If you don't mind misusing the link title attribut in a real bad way you could do the following:

Write this into your wiki page:

[link text|http://link.com|green]
[link name|http://link.com|red]

Write this into your CSS export stylesheet

a[title=green] {
color:green;
}
a[title=red] {
color:red;
}

The result on the html page will be this:

<a href="http://link.com" title="green">link text</a>
<a href="http://link.com" title="red">link text</a>

and the apperarence of the links in the PDF file will be according to the formats in the CSS export stylesheet.

The result will be the same as with a class but off course it is against the real intention of the title attribut.

0 votes
Matthew J. Horn
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
July 31, 2012

If you dont want to write a macro, you could also use jQuery. Something like this would add a classname attribute to an <a> tag:

AJS.$("a").attr('class','classname');

You add this in your Custom HTML panel in the Admin.

If you wanted to only touch specific anchor tags (such as external links), you could do this:

AJS.$("a[class='external-link']").attr('class','classname');

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events