Using CSS styles: Difference between revisions

From JSXGraph Wiki
No edit summary
No edit summary
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
It is possible to use CSS classes for texts in a JSXGraph construction. A CSS class can be used as default text style by setting
before the call of initBoard():
<source lang="javascript">
    JXG.Options.text.cssClass = 'myDefaultFont';
</source>
After initBoard() has been called the default class may be changed by calling
<source lang="javascript">
    board.options.text.cssClass = 'myDefaultFont';
</source>
Highlighted text uses the CSS class highlightCssClass.
<source lang="javascript">
    JXG.Options.text.highlightCssClass = 'myDefaultFont';
</source>
As with all JSXgraph options, CSS class can also be set while creating a text element. See the example below.
'''Attention:''' The CSS properties color and font-size are overwritten by the JSXGraph properties strokeWidth and fontSize.
<html>
<html>
<style type="text/css">
<style type="text/css">
Line 21: Line 38:
     border-radius:3px;
     border-radius:3px;
     font-family: "Avant Garde", Avantgarde, "Century Gothic", CenturyGothic, "AppleGothic", sans-serif;
     font-family: "Avant Garde", Avantgarde, "Century Gothic", CenturyGothic, "AppleGothic", sans-serif;
}
#par {
    font-size:120%;
    color:blue;
}
}


</style>
</style>
</html>
</html>
<jsxgraph width="600" height="600">
<jsxgraph width="600" height="300">
JXG.Options.text.cssDefaultStyle = '';
JXG.Options.text.highlightCssDefaultStyle = '';
JXG.Options.text.cssClass = 'myDefaultFont';
JXG.Options.text.cssClass = 'myDefaultFont';


var board = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-5,5,5,-5]});
var board = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-5,5,5,-5]});


var txt = board.create('text', [1,2, "Hello world"],  
var txt = board.create('text', [1,2, " <span id='par'>(</span> Hello world <span id='par'>)</span>"],  
           {
           {
             cssClass:'myFont', strokeColor:'red',
             cssClass:'myFont', strokeColor:'red',
Line 42: Line 66:


===The JavaScript code===
===The JavaScript code===
<source lang="html">
<source lang="css">
<style type="text/css">
.myFont {
.myFont {
     font-family: Palatino, "Palatino Linotype", "Palatino LT STD", "Book Antiqua", Georgia, serif;
     font-family: Palatino, "Palatino Linotype", "Palatino LT STD", "Book Antiqua", Georgia, serif;
Line 65: Line 88:
     font-family: "Avant Garde", Avantgarde, "Century Gothic", CenturyGothic, "AppleGothic", sans-serif;
     font-family: "Avant Garde", Avantgarde, "Century Gothic", CenturyGothic, "AppleGothic", sans-serif;
}
}
</style>
 
/* Different color for parenthesis */
#par {
    font-size:120%;
    color:blue;
}


</source>
</source>
Line 73: Line 101:
var board = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-5,5,5,-5]});
var board = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-5,5,5,-5]});


var txt = board.create('text', [1,2, "Hello world"],  
var txt = board.create('text', [1,2, " <span id='par'>(</span> Hello world <span id='par'>)</span>"],  
           {
           {
             cssClass:'myFont', strokeColor:'red',
             cssClass:'myFont', strokeColor:'red',
Line 85: Line 113:


[[Category:Examples]]
[[Category:Examples]]
[[Category:Text]]

Latest revision as of 10:14, 9 November 2020

It is possible to use CSS classes for texts in a JSXGraph construction. A CSS class can be used as default text style by setting before the call of initBoard():

    JXG.Options.text.cssClass = 'myDefaultFont';

After initBoard() has been called the default class may be changed by calling

    board.options.text.cssClass = 'myDefaultFont';

Highlighted text uses the CSS class highlightCssClass.

    JXG.Options.text.highlightCssClass = 'myDefaultFont';

As with all JSXgraph options, CSS class can also be set while creating a text element. See the example below.

Attention: The CSS properties color and font-size are overwritten by the JSXGraph properties strokeWidth and fontSize.

The JavaScript code

.myFont {
    font-family: Palatino, "Palatino Linotype", "Palatino LT STD", "Book Antiqua", Georgia, serif;
    border: 1px solid black;
    padding: 5px;
    border-radius:5px;
}

.myFontHigh {
    font-family: Palatino, "Palatino Linotype", "Palatino LT STD", "Book Antiqua", Georgia, serif;
    border: 1px dashed black;
    padding: 5px;
    border-radius:5px;
}


.myDefaultFont {
    border: 1px solid black;
    padding: 1px;
    border-radius:3px;
    font-family: "Avant Garde", Avantgarde, "Century Gothic", CenturyGothic, "AppleGothic", sans-serif;
}

/* Different color for parenthesis */
#par {
    font-size:120%;
    color:blue;
}
JXG.Options.text.cssClass = 'myDefaultFont';

var board = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-5,5,5,-5]});

var txt = board.create('text', [1,2, " <span id='par'>(</span> Hello world <span id='par'>)</span>"], 
          {
            cssClass:'myFont', strokeColor:'red',
            highlightCssClass: 'myFontHigh',
            fontSize:20
          });

var p = board.create('point', [0,0]);