Issue
I'm trying to generate web pages from markdown files. This example produces the desired visual presentation of a web page:
header.html
<!DOCTYPE html>
<html>
<head>
<style>
code {
display: block;
white-space: pre;
padding: 20px;
line-height: 125%;
background: #eee;
border: 1px solid #ccc;
margin: 1em 0;
}
p:nth-of-type(1) code {
display: inline-block;
padding: 0;
color: red;
}
</style>
</head>
<body>
body.md
Assuming you have the IP `1.1.1.1` or `2.2.2.2`, then execute the following:
```
echo "hello world";
echo "another command here";
echo "you are done";
```
footer.html
</body>
</html>
When I run the commands:
apt-get install markdown;
markdown body.md > body.html;
cat header.html body.html footer.html > index.html;
I see this in my web browser:
This is exactly what I want to see!
However, I want to delete the p:nth-of-type(1) code
rule because I do not want to write custom CSS selectors to target every single inline <code>
block. I have thousands of pages of markdown documents to convert to html. Manually going through page by page to pick out which <code>
block is inline and which is a block level element is too time consuming.
Is there an easier way to either
a) write a CSS selector that targets p>code
if and only if the p
has one and only one child element and that one child element is of element type code
or b) a way to tell the markdown
command to add a css class to <code>
element
or c) something completely different to let me write a generic css rule to target inline code elements vs block level code elements?
Solution
a) write a CSS selector that targets p>code if and only if the p has one and only one child element and that one child element is of element type code
What you are looking for is the pseudo-class :only-child
Your desired selector is simply p > code:only-child
.
Answered By - Alohci
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.