zotero / citeproc-js-server

Web service to generate citations and bibliographies using citeproc-js
Other
60 stars 39 forks source link

Use of <b> and <i> tags #3

Closed scaleupcto closed 11 years ago

scaleupcto commented 11 years ago

I have no idea whether or not this is a citeproc-node issue or a citeproc-js issue, as I'm new to both - however, I'm interested if you've considered the use of <b> and <i> tags in the HTML output of citations as per the following clarification for HTML5:

http://www.w3.org/International/questions/qa-b-and-i-tags

These are the important bits:

The HTML5 specification redefines the intended use of these elements as follows.

The i element represents a span of text in an alternate voice or mood, or otherwise offset from the normal prose, such as a taxonomic designation, a technical term, an idiomatic phrase from another language, a thought, a ship name, or some other prose whose typical typographic presentation is italicized.

The b element represents a span of text to be stylistically offset from the normal prose without conveying any extra importance, such as key words in a document abstract, product names in a review, or other spans of text whose typical typographic presentation is boldened.

and

It may help to think of b or i elements as essentially a span element with an automatic fallback styling. Just like a span element, these elements usually benefit from class names if they are to be useful.

I wonder if it might be better to add classes to the elements, or consider instead the use of <em> or <strong> to replace <i> and <b>?

fcheslack commented 11 years ago

This is a question for citeproc-js, but I don't believe it is actually an issue. Wrapping all citation elements in classed tags has been discussed, but as far as b and i, as far as I know citation styles only specify typography rather than the kind of semantic meanings html5 wants, and straight and tags are as close as you can get without including your own css for everything.

scaleupcto commented 11 years ago

I agree on tags vs. css, but it's a question of which tags. em and strong are the modern equivalents of class-less i and b. I will raise with citeproc-js

fcheslack commented 11 years ago

While in practice they are generally rendered the same, em and strong have (and have had in previous html versions) their own defined meaning that is not the same as i and b.